1、__init__ : 構造函數,在生成對象時調用
該方法是在對象產生之后才會執行,只用來為對象進行初始化操作,可以有任意代碼,但不一定有返回值。
所謂初始化構造函數就是在構造對象的同時被對象自動調用,完成對事物的初始化,一個類只要生成一個類對象,它一定會調用初始化構造函數. 特點: 1>一個類中只能有一個初始化構造函數 2>不能有返回值 3>可以用它來為每個實例定制自己的特征
class Chinese: country = 'china' def __init__(self,name,sex,age): self.name = name self.sex = sex self.age = age def tell_info(self): info = f""" 國籍:{self.country} 姓名:{self.name} 性別:{self.sex} 年齡:{self.age} """ print(info) s1 = Chinese('alex','man','22') s2 = Chinese('alex2','woman','23') s3 = Chinese('alex3','man','21')
2、_mro_解析方法調用的順序
繼承的實現原理(多繼承查找)
>>> F.mro() #等同於F.__mro__
(<class '__main__.C'>, <class '__main__.A'>, <class '__main__.B'>, <class 'object'>)
3、__call__
類的專有方法:
- __init__ : 構造函數,在生成對象時調用
- __del__ : 析構函數,釋放對象時使用
- __repr__ : 打印,轉換
- __setitem__ : 按照索引賦值
- __getitem__: 按照索引獲取值
- __len__: 獲得長度
- __cmp__: 比較運算
- __call__: 函數調用
- __add__: 加運算
- __sub__: 減運算
- __mul__: 乘運算
- __div__: 除運算
- __mod__: 求余運算
- __pow__: 乘方
