Python 從 2.0 版本開始引入了運算符,用于簡化代碼并增加可讀性。下面是一些常見的運算符及其用法。
+ # 加法 - # 減法 * # 乘法 / # 浮點數除法 // # 整數除法,相當于 math.floor() % # 取模,即求余數 ** # 冪運算
在使用運算符時需要注意一些問題。首先,除數為 0 時,會觸發 ZeroDivisionError 異常。其次,浮點數運算存在精度問題,可能會導致意外的結果。
a = 1.1 b = 2.2 print(a + b) # 3.3000000000000003
為了避免精度問題,可以使用 decimal 模塊或者使用整數計算后再轉換回浮點數的方法。
import decimal a = decimal.Decimal('1.1') b = decimal.Decimal('2.2') print(a + b) # Decimal('3.3') a = 11 b = 22 print(float(a + b) / 10) # 3.3
最后,Python 還支持運算符的重載。這意味著我們可以自定義類的運算符行為。
class Vector: def __init__(self, x, y): self.x = x self.y = y def __add__(self, other): return Vector(self.x + other.x, self.y + other.y) def __str__(self): return '(%s, %s)' % (self.x, self.y) v1 = Vector(1, 2) v2 = Vector(3, 4) v3 = v1 + v2 print(v3) # (4, 6)