Ưu tiên của các nhà khai thác Python
Sự kết hợp của các giá trị, biến, toán tử và các cuộc gọi chức năng được gọi là một biểu thức. Trình thông dịch Python có thể đánh giá một biểu thức hợp lệ.
Nội dung chính
- Ưu tiên của các nhà khai thác Python
- Chương trình này chạy khối Lunch being delivered4 ngay cả khi tiền là 0. Nó không cung cấp cho chúng tôi đầu ra mong muốn vì mức độ ưu tiên của Lunch being delivered1 cao hơn Lunch being delivered2.
- Sự kết hợp của các nhà khai thác Python
- Thứ tự ưu tiên trong Python là gì?
- Thứ tự chính xác của người vận hành ưu tiên là gì?
- Nhà điều hành được ưu tiên trong Python với ví dụ là gì?
- Thứ tự ưu tiên trong Python Class 11 là gì?
Ví dụ:
>>> 5 - 7
-2
Ở đây
# Multiplication has higher precedence
# than subtraction
>>> 10 - 4 * 2
2
2 là một biểu thức. Có thể có nhiều hơn một toán tử trong một biểu thức.Để đánh giá các loại biểu thức này, có một quy tắc ưu tiên trong Python. Nó hướng dẫn thứ tự thực hiện các hoạt động này.
Ví dụ, phép nhân có ưu tiên cao hơn phép trừ.
# Multiplication has higher precedence
# than subtraction
>>> 10 - 4 * 2
2
Nhưng chúng ta có thể thay đổi thứ tự này bằng cách sử dụng dấu ngoặc đơn
# Multiplication has higher precedence
# than subtraction
>>> 10 - 4 * 2
2
3 vì nó có ưu tiên cao hơn so với phép nhân.# Parentheses [] has higher precedence
>>> [10 - 4] * 2
12
Các nhà điều hành được ưu tiên trong Python được liệt kê trong bảng sau. Đó là theo thứ tự giảm dần [nhóm trên có ưu tiên cao hơn so với nhóm thấp hơn].
3 | Dấu ngoặc đơn |
5 | Số mũ |
6, 7, 8 | Unary Plus, Unary Minus, bitwise không |
9, 0, 1, 2 | Phép nhân, phân chia, phân chia sàn, mô đun |
3, 4 | Ngoài ra, trừ |
5, 6 | Các nhà khai thác thay đổi bitwise |
7 | Bitwise và |
8 | BitWise XOR |
9 | Bitwise hoặc |
10, 11, 12, 13, 14, 15, 16, 17, 18, 19 | So sánh, danh tính, nhà khai thác thành viên |
10 | Logic không |
11 | Hợp lý và |
12 | Hợp lý hoặc |
Hãy xem xét một số ví dụ:
Giả sử chúng ta đang xây dựng một khối
# Multiplication has higher precedence
# than subtraction
>>> 10 - 4 * 2
2
13 chạy # Multiplication has higher precedence
# than subtraction
>>> 10 - 4 * 2
2
14 khi bữa trưa là trái cây hoặc bánh sandwich và chỉ khi tiền nhiều hơn hoặc bằng 2.# Multiplication has higher precedence
# than subtraction
>>> 10 - 4 * 2
2
1Đầu ra
# Multiplication has higher precedence
# than subtraction
>>> 10 - 4 * 2
2
1Chương trình này chạy khối
# Multiplication has higher precedence
# than subtraction
>>> 10 - 4 * 2
2
14 ngay cả khi tiền là 0. Nó không cung cấp cho chúng tôi đầu ra mong muốn vì mức độ ưu tiên của # Multiplication has higher precedence
# than subtraction
>>> 10 - 4 * 2
2
11 cao hơn # Multiplication has higher precedence
# than subtraction
>>> 10 - 4 * 2
2
12.Chúng ta có thể nhận được đầu ra mong muốn bằng cách sử dụng dấu ngoặc đơn
# Multiplication has higher precedence
# than subtraction
>>> 10 - 4 * 2
2
3 theo cách sau:# Parentheses [] has higher precedence
>>> [10 - 4] * 2
12
2Đầu ra
# Parentheses [] has higher precedence
>>> [10 - 4] * 2
12
3Chương trình này chạy khối Lunch being delivered4 ngay cả khi tiền là 0. Nó không cung cấp cho chúng tôi đầu ra mong muốn vì mức độ ưu tiên của Lunch being delivered1 cao hơn Lunch being delivered2.
Chúng ta có thể nhận được đầu ra mong muốn bằng cách sử dụng dấu ngoặc đơn
# Multiplication has higher precedence
# than subtraction
>>> 10 - 4 * 2
2
3 theo cách sau:# Parentheses [] has higher precedence
>>> [10 - 4] * 2
12
2Sự kết hợp của các nhà khai thác Python
# Multiplication has higher precedence
# than subtraction
>>> 10 - 4 * 2
2
3 theo cách sau:Chúng ta có thể thấy trong bảng trên rằng nhiều hơn một toán tử tồn tại trong cùng một nhóm. Các nhà khai thác này có cùng mức độ ưu tiên.
# Parentheses [] has higher precedence
>>> [10 - 4] * 2
12
5Đầu ra
# Parentheses [] has higher precedence
>>> [10 - 4] * 2
12
6Chương trình này chạy khối
# Multiplication has higher precedence
# than subtraction
>>> 10 - 4 * 2
2
14 ngay cả khi tiền là 0. Nó không cung cấp cho chúng tôi đầu ra mong muốn vì mức độ ưu tiên của # Multiplication has higher precedence
# than subtraction
>>> 10 - 4 * 2
2
11 cao hơn # Multiplication has higher precedence
# than subtraction
>>> 10 - 4 * 2
2
12.4 ngay cả khi tiền là 0. Nó không cung cấp cho chúng
tôi đầu ra mong muốn vì mức độ ưu tiên của # Multiplication has higher precedence
# than subtraction
>>> 10 - 4 * 2
2
11 cao hơn # Multiplication has higher precedence
# than subtraction
>>> 10 - 4 * 2
2
12.: Exponent operator Chúng ta có thể nhận được đầu ra mong muốn bằng cách sử dụng dấu ngoặc đơn Chúng ta có thể nhận được đầu ra mong muốn bằng cách sử dụng dấu ngoặc đơn
# Multiplication has higher precedence
# than subtraction
>>> 10 - 4 * 2
2
3 theo cách sau:# Parentheses [] has higher precedence
>>> [10 - 4] * 2
12
2Sự kết hợp của các nhà khai thác Python
# Multiplication has higher precedence
# than subtraction
>>> 10 - 4 * 2
2
3 theo cách sau:Chúng ta có thể thấy trong bảng trên rằng nhiều hơn một toán tử tồn tại trong cùng một nhóm. Các nhà khai thác này có cùng mức độ ưu tiên.
Khi hai toán tử có cùng mức độ ưu tiên, sự kết hợp giúp xác định thứ tự hoạt động.
# Multiplication has higher precedence
# than subtraction
>>> 10 - 4 * 2
2
0Đầu ra
Chương trình này chạy khốiThứ tự ưu tiên trong Python là gì?
# Multiplication has higher precedence
# than subtraction
>>> 10 - 4 * 2
2
14 ngay cả khi tiền là 0. Nó không cung cấp cho chúng tôi đầu ra mong muốn vì mức độ ưu tiên của # Multiplication has higher precedence
# than subtraction
>>> 10 - 4 * 2
2
11 cao hơn # Multiplication has higher precedence
# than subtraction
>>> 10 - 4 * 2
2
12.Parenthesis [], Exponential **, Multiplication *, Division /, Addition +, Subtraction -.Thứ tự chính xác của người vận hành ưu tiên là gì?
Chúng ta có thể nhận được đầu ra mong muốn bằng cách sử dụng dấu ngoặc đơn , so q && r is grouped as an operand. Since the logical operators guarantee evaluation of operands from left to right, q && r is evaluated before s-- .
Nhà điều hành được ưu tiên trong Python với ví dụ là gì?
Thứ tự ưu tiên trong Python Class 11 là gì?affects how an expression is evaluated. For example, x = 7 + 3 * 2; here, x is assigned 13, not 20 because operator * has higher precedence than +, so it first multiplies 3*2 and then adds into 7.
Thứ tự ưu tiên trong Python Class 11 là gì?
Câu 3: Thứ tự hoạt động trong Python là gì?Trả lời 3: Pemdas là P, E, MD, AS;Nhân và chia có cùng mức độ ưu tiên, và cùng áp dụng cho việc bổ sung và trừ.multiplication and division have the same precedence, and the same applies for addition and subtraction.multiplication and division have the same precedence, and the same applies for addition and subtraction.