Python 101 基礎教學 (4) - 運算符號優先順序
Python 的陳述式因為包含多種可能的運算符號,所以要制定一定的優先順序,才能避免衝突,讓程式在執行的時候有規則可循。
優先順序為上至下
運算符號 | 表示 |
---|---|
() | 括號 |
** | 指數 |
+x, -x, ~x | 正、負、倒數 |
*, /, //, % | 乘、除、餘數 |
+, - | 加、減 |
<<, >> | 位元 SHIFT |
& | 位元 AND |
^ | 位元 XOR |
| | 位元 OR |
==, !=, >, >=, <, <=, is, is not, in, not in | 邏輯 比較符號 |
not | 邏輯 NOT |
and | 邏輯 AND |
or | 邏輯 OR |
# 以下為一些例子
print(1 - 2 * 3)
# output: -5
# 先做2*3=6,然後才做1-6=5
print(2 == 2 or 3 <= 2)
# output: True
# 先做2==2=True,然後做3<=2=False,最後True or False=True
print((1 + 2) * 3)
# output: 9
# 先判斷到括號,所以先做括號裡的1+2=3,然後3*3=9
參考: https://www.programiz.com/python-programming/precedence-associativity
繼續閱讀: