Python 中的取模運算子(%)

Shivam Arora 2023年1月30日 2021年10月2日
  1. 在算術運算中使用模運算子
  2. 在 Python 的字串操作中使用 %
Python 中的取模運算子(%)

Python 中用於獲取模數的符號是百分比標記%

本文將討論和理解 Python 中取模運算子(%)的含義和用法。

在算術運算中使用模運算子

模運算子用於算術運算。幾乎所有語言都要求此模運算子具有整數運算元。然而,Python Modulo 在這種情況下非常通用。

模數表示為 x%y。像 x%y 這樣的表示式對應於 x*y 的餘數。它的優先順序與乘法和除法運算子的優先順序相同。

例如,

a=10
b=2
c = 11
print(a%b)
print(c%b)

輸出:

0
1

Python 的模運算只丟擲一個異常,即 ZeroDivisionError。當模運算子的除法器運算元變為零時,就會發生這種情況。這意味著運算元中不能有零。

請參考以下程式碼。

a = 5
b = 0
try:
    print(a % b)
      
except ZeroDivisionError as err:
    print('not divisible by zero!')

輸出:

divisible by zero!

在上面的例子中,我們使用 try...except 塊來處理異常。由於變數 b 的值為零,% 引發了異常。

在 Python 的字串操作中使用 %

在字串格式中,% 還用於通過使用值來替換字串中的值。我們可以使用 %= 表示式來替換字典中的值。

例如,

x = 'abc_%(key)s'
x %= {'key':'def'}
print(x)

輸出:

abc_def

我們使用此運算子將 key 的值替換為 value。當我們希望基於模式格式化字串時,它也用於字串格式化。它充當不同值(如字串、數字等)的佔位符。

例如,

a = 'abc'
b = 5
print('%s %d' % (a, b))

輸出:

abc 5

對於字串,我們使用 %s%d 用於整數。