Bảng sau liệt kê tất cả các toán tử từ độ ưu tiên cao nhất đến thấp nhất.
| STT | Toán tử & Mô tả |
|---|---|
| 1 | ** Lũy thừa (raise to the power) |
| 2 | ~ + - Phép bổ sung, cộng/trừ một ngôi |
| 3 | * / % // Nhân, chia, modulo, chia nguyên |
| 4 | + - Cộng và trừ |
| 5 | >> << Dịch bit phải và trái |
| 6 | & Bitwise AND |
| 7 | ^ | Bitwise XOR và OR |
| 8 | <= < > >= Toán tử so sánh |
| 9 | <> == != Toán tử kiểm tra bằng nhau |
| 10 | = %= /= //= -= += *= **= Toán tử gán |
| 11 | is is not Toán tử nhận dạng |
| 12 | in not in Toán tử thành viên |
| 13 | not or and Toán tử logic |
Thứ tự ưu tiên ảnh hưởng đến cách biểu thức được đánh giá. Ví dụ: x = 7 + 3 * 2 gán x = 13 chứ không phải 20, vì * có ưu tiên cao hơn +.
Ví dụ
#!/usr/bin/python
a = 20
b = 10
c = 15
d = 5
e = 0
e = (a + b) * c / d # (30 * 15) / 5
print("Value of (a + b) * c / d is", e)
e = ((a + b) * c) / d # (30 * 15) / 5
print("Value of ((a + b) * c) / d is", e)
e = (a + b) * (c / d) # 30 * (15/5)
print("Value of (a + b) * (c / d) is", e)
e = a + (b * c) / d # 20 + (150/5)
print("Value of a + (b * c) / d is", e)
Kết quả
Value of (a + b) * c / d is 90 Value of ((a + b) * c) / d is 90 Value of (a + b) * (c / d) is 90 Value of a + (b * c) / d is 50