python的issubclass和isinstance以及property
阿新 • • 發佈:2019-03-26
永遠 attribute 固定 return eba python ast size 好的 issubclass(A類,B類) A類如果是B類的子類,則返回True
isinstance(object,classinfo) 檢查一個實例對象是否是某類的
1.第一個參數如果不是對象,則永遠返回false
2.第二個參數不是類或者由類對象組成的元組,會拋出一個TypeError異常
hasattr(object,‘name‘) 第一個參數為對象,第二個參數為屬性名,判斷屬性是否屬於某對象
getattr(object,name,[default]) 判斷某屬性是否存在,存在則返回屬性值,不存在則報錯,如果指定default字符串,則返回固定字符串
setattr(object,name,value) 給對象設置屬性,第一個參數為對象名,第二個參數為字符串類型屬性名,第三個參數為屬性值
delattr(對象名,‘屬性名’) 刪除對象的某個屬性
property(獲取屬性的方法,設置屬性的方法,刪除屬性的方法) 設置定義好的屬性:
isinstance(object,classinfo) 檢查一個實例對象是否是某類的
1.第一個參數如果不是對象,則永遠返回false
2.第二個參數不是類或者由類對象組成的元組,會拋出一個TypeError異常
hasattr(object,‘name‘) 第一個參數為對象,第二個參數為屬性名,判斷屬性是否屬於某對象
getattr(object,name,[default]) 判斷某屬性是否存在,存在則返回屬性值,不存在則報錯,如果指定default字符串,則返回固定字符串
setattr(object,name,value) 給對象設置屬性,第一個參數為對象名,第二個參數為字符串類型屬性名,第三個參數為屬性值
property(獲取屬性的方法,設置屬性的方法,刪除屬性的方法) 設置定義好的屬性:
>>> class C: def __init__(self,size = 10): self.size = size pass def getSize(self): return self.size def setSize(self,value): self.size = value pass def delSize(self): del self.size pass x = property(getSize,setSize,delSize) pass >>> c1 = C() >>> c1.getSize() 10 >>> c1.x 10 >>> c1.x = 50 >>> c1.x 50 >>> del c1.x >>> c1.size Traceback (most recent call last): File "<pyshell#54>", line 1, in <module> c1.size AttributeError: ‘C‘ object has no attribute ‘size‘ >>>
python的issubclass和isinstance以及property