python中的運算子使用時是呼叫了物件的方法
方法運算子
說明__add __
加法+ +=
__sub __
減法- -+
__mul __
乘法* *=
__div __
除法/ /=
__mod __
求餘% %=
__bool __
布林bool()
__eq __
等於==
__ne __
不等於!=
__ge __
大於等於
>=
__le __
小於等於
<=
__gt __
大__lt __
小於<
__contains __
成員運算
in__getitem __
切片x[:]
__setitem __
切片賦值
x[:]=
__delitem __
切片刪除
del x[:]
__len __
長度len()
__iter __, __next __
迭代iter() next() for while
__repr __, __str __
列印、轉換
print() pepr() str()
加法運算重構(類外的+),將一一對應的列表元素相加
class demo:
def __init__(self,obj): # 引數self是類自身,引數obj物件傳遞的引數
self.data=obj # 新增物件屬性
def __add__(a,b): # 引數a是物件a ,引數b是物件b
n=len(a.data)
num=[a.data[i]+b.data[i] for i in range(n)]
return demo(num) # 返回新的物件
a=demo([1,2,3]) # a 物件
b=demo([3,2,1]) # b 物件
c=a+b # c 物件
print(c.data)
運算子過載之過載型別運算子
普通型別 類型別 呼叫對應的只有乙個引數 引數的型別就是這個普通型別 的建構函式 需求 boy boy1 10000 薪資 建構函式boy int boy boy2 rock 姓名 建構函式boy char 普通型別賦值給類型別其實很簡單,就是專門的對這個賦值的型別定義乙個建構函式。編譯器在執行 的...
過載之運算子過載
運算子過載,就是對已有的運算子重新進行定義,賦予其另一種功能,以適應不同的資料型別 運算子過載的宣告方式與方法的宣告方式相同,但operator關鍵字告訴編譯器,它實際上是乙個運算子過載,後面是相關運算子的符號,在本例中就是 返回型別是在使用這個運算子時獲得的型別。在本例中,把兩個向量加起來會得到另...
python隨筆 之 運算子過載
class bob def init self,x self.x x defeat self print bob吃了 d碗飯 self.x 過載,對加法進行過載 def add self,other 返回乙個此類的的匿名物件 return bob self.x other.x bob昨天吃了10碗飯...