1算利、構(gòu)造和析構(gòu)
__init__(self[,...])
__new__(cls[,...]):對(duì)象實(shí)例化調(diào)用的第一個(gè)方法指么。當(dāng)繼承的父類不可改變時(shí),才會(huì)重寫此方法
舉例:將字符串都變?yōu)榇髮?/p>
#str類不可改變
class CapStr(str)
def __new__(cls,string):
string=string.upper()
return str.__new__(cls,string)
del(self):只有當(dāng)所有引用都del后才會(huì)自動(dòng)調(diào)用析構(gòu)函數(shù)昭伸,也是python的垃圾回收機(jī)制
2胀滚、對(duì)象計(jì)算
__add__(self,other)
__sub__(self,other)
...加減乘除位移都可
3霎匈、功能方法
__string__(self):當(dāng)調(diào)用print打印字符串時(shí)自動(dòng)執(zhí)行
舉例:
class A():
def __string__(self):
return '自動(dòng)打印'
a=A()
print(a)
#結(jié)果為自動(dòng)打印
__repr__(self):調(diào)用對(duì)象時(shí)直接顯示返回內(nèi)容
舉例:
class B():
def __repr__(self):
return '自動(dòng)顯示'
b=B()
b
#結(jié)果為自動(dòng)顯示