Precedența operatorilor
Precedența operatorilor decide ce operații efectuează Python mai întâi și în ce ordine.
Exemplu
Parantezele au cea mai mare precedență, așa că tot ce se află în interiorul lor se calculează primul:
Prompt
Scrie un program Python care demonstrează că parantezele au cea mai mare precedență, afișând rezultatul expresiei (6 + 3) - (6 + 3).
Ieșire: program Python complet
main.py
print((6 + 3) - (6 + 3))
Exemplu
Înmulțirea * are o precedență mai mare decât adunarea +, așa că Python înmulțește înainte să adune:
Prompt
Scrie un program Python care demonstrează că înmulțirea are o precedență mai mare decât adunarea, afișând rezultatul expresiei 100 + 5 * 3.
Ieșire: program Python complet
main.py
print(100 + 5 * 3)
Ordinea precedenței
Tabelul de mai jos arată ordinea, cu operatorii de cea mai mare precedență primii și cu cei de cea mai mică la final:
Tabelul ordinii precedenței
main.py
# Operator | Description
# () | Parentheses
# ** | Exponentiation
# +x -x ~x | Unary plus, unary minus, and bitwise NOT
# * / // % | Multiplication, division, floor division, and modulus
# + - | Addition and subtraction
# << >> | Bitwise left and right shifts
# & | Bitwise AND
# ^ | Bitwise XOR
# | | Bitwise OR
# == != > >= < <= is is not in not in | Comparisons, identity, and membership operators
# not | Logical NOT
# and | AND
# or | OR
Evaluarea de la stânga la dreapta
Operatorii cu precedență egală sunt, în general, evaluați de la stânga la dreapta.
Exemplu
Adunarea + și scăderea - au aceeași precedență, așa că această expresie se calculează de la stânga la dreapta:
Prompt
Scrie un program Python care demonstrează evaluarea de la stânga la dreapta atunci când operatorii au aceeași precedență, afișând rezultatul expresiei 5 + 4 - 7 + 3.
Ieșire: program Python complet
main.py
print(5 + 4 - 7 + 3)