十六、python 特殊方法、運算符重載
運算符重載
1、構造函數、析構函數
__new__ 、 __init__ 、 __del__
2、四則運算 +-*/
__add__ 、 __sub__ 、 __mul__ 、 __div__
3、比較
__it__ 、 __gt__ 、 __cmp__
4、其它
__str__ 、 __repr__ 、 __conains__ 、 __bool__
------------------------------------------------------------------------------------------------------------------------
#特殊方法
def __str__(self): #該方法用於類中的print
return 'Id={0} Name={1} Email={2}'.format(self.Id,self.Name,self.Email)
def __repr__(self): #該方法用於交互式中的類打印,要沒有實現,交互式中輸入類對象,將會打印地址
return 'Id={0}'.format(self.Id)
def __add__(self, other): #用於類中連個對象對應的屬性相加
return self.Id + other.Id
def __lt__(self, other): #返回boolean,只用於類、交互式中
return self.Id < other.Id
#調用方法 __str__
print bjaidon #要沒有實現__str__方法將會打印地址
print bjbajie
#交互式中輸
入對象驗證__repr__
bjaidon
print bjaidon + bjbajie #兩個的Id值相加
bjaidon + bjbajie
print bjaidon < bjbajie
bjaidon < bjbajie