python 類特殊成員
阿新 • • 發佈:2017-11-05
並且 pre 字典類 參數 all other __add__ () 相加
class Foo: def __init__(self,age): self.age=age print(‘init‘) def __call__(self): print(‘call‘) def __int__(self): return 123 def __str__(self): return ‘foo‘ def __add__(self,other): return self.age+other.age def __del__(self):##gc回收foo銷毀 print(‘foo is over‘) def __getitem__(self,item): return item+10 def __setitem__(self,key,value): print(key,value) def __delitem__(self,key): print(key) f=Foo(12)##調用init f1=Foo(13) f()##調用call print(int(f))##調用int print(f)##調用str print(f+f1)##兩個對象相加,會自動執行第一個對象的add方法 ,並且將第二個對象做為參數傳遞進去 print(f.__dict__ )#將對象的成員以字典類型全部顯示 Foo.__dict__將類的所有成員和方法以字典類型顯示 print(f[10])##調用getitem並將10傳給item f[10]=23#調用setitem將10傳給10 23傳給value del f[10]##調用delitem
結果:
init init call 123 foo 25 {‘age‘: 12} 20 (10, 23) 10
python 類特殊成員