面向對象-常用函數
阿新 • • 發佈:2019-05-16
set code elf 父類 輸出 del {} strong dir
issubclass()
作用:檢測一個類是否是另一個類的子類
格式:issubclass(子類,父類)
返回值:布爾值
註意事項:只要存在於繼承關系中 就成立
1 #issubclass 2 class Father(object): 3 pass 4 class Son(Father): 5 pass 6 result = issubclass(Son,object) 7 print(result) 8 #輸出結果:True
isinstance()
作用:檢測一個對象是否是指定類的實例
格式:isinstance(對象,類)
返回值:布爾值
1 #isinstance 2 class Monkey: 3 pass 4 class Human: 5 pass 6 ren = Human() 7 result = isinstance(ren,(Monkey,Human)) 8 print(result) 9 #輸出結果:True
hasattr()
作用:檢測類/對象是否包含指定名稱的成員
格式:hasattr(對象,成員名稱)
返回值:布爾值
註意:可以檢測類也可以檢測對象,只要可以訪問就算存在
1 #hasattr() 2class Human: 3 #成員屬性 4 age = 1 5 sex = ‘man‘ 6 #成員方法 7 def cry(self): 8 print(‘555555‘) 9 #對類進行成員檢測 10 result = hasattr(Human,‘smile‘) 11 print(result) 12 #輸出結果:False 13 #實例化對象 14 ren = Human() 15 result = hasattr(ren,‘age‘) 16 print(result) 17 #輸出結果:True
getattr()
作用:獲取類.對象的成員值
格式:getattr(對象,成員名稱,默認值)
返回值:不確定
1 #getattr() 2 class Monkey: 3 #屬性 4 age = 10 5 sex = ‘雄‘ 6 color = ‘golden‘ 7 #方法 8 def say(self): 9 print(‘嘰嘰嘰嘰~‘) 10 #實例化對象 11 houzi = Monkey() 12 #獲取猴子的顏色 13 print(houzi.color)#語法方式 14 #輸出結果:golden 15 16 result = getattr(houzi,‘color‘)#函數方式 17 print(result) 18 #輸出結果:golden 19 20 #獲取不存在的成員 21 #print(houzi.name) 22 #輸出結果:AttributeError: ‘Monkey‘ object has no attribute ‘name‘ 23 24 result = getattr(houzi,‘name‘,‘小猴子~‘) 25 print(result) 26 #輸出結果:小猴子~
setattr()
作用:設置類/對象的成員值
格式:setattr(對象,成員名稱,設置的值)
返回值:無
1 #setattr() 2 class Monkey: 3 #屬性 4 age = 10 5 sex = ‘雄‘ 6 color = ‘golden‘ 7 #方法 8 def say(self): 9 print(‘嘰嘰嘰嘰~‘) 10 #實例化對象 11 houzi = Monkey() 12 print(houzi.__dict__) 13 #輸出結果:{} 14 15 #設置對象成員 16 #houzi.name = ‘小悟空‘#語法方式 17 #houzi.color = ‘黑色‘ 18 setattr(houzi,‘weight‘,‘100斤‘)#函數方式 19 print(houzi.__dict__) 20 #輸出結果:{‘weight‘: ‘100斤‘}
delatter()
作用:刪除類.對象的成員
格式:delattr(對象,成員名稱)
返回值:無
1 #delattr() 2 class Monkey: 3 #屬性 4 age = 10 5 sex = ‘雄‘ 6 color = ‘golden‘ 7 #方法 8 def __init__(self): 9 self.name = ‘xwk‘ 10 self.height = 100 11 def say(self): 12 print(‘嘰嘰嘰嘰~‘) 13 #實例化對象 14 houzi = Monkey() 15 print(houzi.__dict__) 16 #輸出結果:{‘name‘: ‘xwk‘, ‘height‘: 100} 17 18 #del houzi.name #語法方式 19 delattr(houzi,‘height‘) 20 print(houzi.__dict__) 21 #輸出結果:{‘name‘: ‘xwk‘}
dir()
作用:獲取對象可以訪問的所有成員的列表
property()
作用:設置描述符操作的函數
面向對象-常用函數