http://www.cnblogs.com/linhaifeng/articles/6204014.html#_label12
描述符是什么:描述符本质就是一个新式类,在这个新式类中,至少实现了__get__(),__set__(),__delete__()中的一个,这也被称为描述符协议
__get__():调用一个属性时,触发
__set__():为一个属性赋值时,触发
__delete__():采用del删除属性时,触发
定义一个描述符
描述符是干什么的:描述符的作用是用来代理另外一个类的属性的(必须把描述符定义成这个类的类属性,不能定义到构造函数中)
描述符分两种
一 数据描述符:至少实现了__get__()和__set__()
class Foo: def __set__(self, instance, value): print(‘set‘) def __get__(self, instance, owner): print(‘get‘)
非数据描述符:没有实现__set__()
class Foo: def __get__(self, instance, owner): print(‘get‘)
原文地址:https://www.cnblogs.com/xiangtingshen/p/10463924.html
时间: 2024-10-08 17:30:48