知识回顾:property
class B:
def __init__(self,size=10): #初始化
self.size = size
# 3个函数
def getsize(self):
return self.size
def setsize(self,size):
self.size = size
def delsize(self):
del self.size
#property函数:参数是三个函数的名字
x = property(getsize,setsize,delsize)
-----------------------------------------------------
执行:
b = B() 实例化对象
b.x < == > b.getsize()
b.x = 数值 < == > b.setsize()
del b.x < == > b.delsize
描述符:就是将某种特殊类型的类的实例指派给另一个类的属性
class A:
def __get__(self,isinstance,owner): #访问A类对象时,调用
print('getting...',self,isinstance,owner)
def __set__(self,isinstance,owner): #设置A类对象时,调用
print('setting...',self,isinstance,owner)
def __delete__(self,isinstance): #删除A类对象时,调用
print('delling...',self,isinstance)
class Test:
a = A() #描述符:将类A的对象a,作为类Test的属性
迭代器(每一次循环的结果作为下一次迭代的初始值)
iter() next()
这里写代码片