知識回顧: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()
這裏寫代碼片