Operatori logici în Python
Ca să unești instrucțiuni condiționale, Python îți oferă trei operatori logici:
and- True doar când ambele afirmații sunt adevărateor- True când cel puțin o afirmație este adevăratănot- Inversează rezultatul, așa că adevărat devine False, iar fals devine True
Operatorul and
Operatorul and unește două condiții și cere ca amândouă să fie îndeplinite. Dacă oricare dintre ele nu este îndeplinită, întreaga expresie este False.
Exemplu
a este mai mare decât b ȘI c este mai mare decât a:and pentru a verifica dacă a este mai mare decât b ȘI c este mai mare decât a.
Ieșire: program Python complet
a = 200
b = 33
c = 500
if a > b and c > a:
print("Ambele condiții sunt True")
Operatorul or
Și operatorul or unește două condiții, dar este mai ușor de satisfăcut. O singură condiție adevărată este suficientă pentru ca întreaga expresie să fie True.
Exemplu
a este mai mare decât b SAU mai mare decât c:or pentru a verifica dacă a este mai mare decât b SAU a este mai mare decât c.
Ieșire: program Python complet
a = 200
b = 33
c = 500
if a > b or a > c:
print("Cel puțin una dintre condiții este True")
Operatorul not
Operatorul not lucrează cu o singură condiție și îi transformă rezultatul în opusul lui.
Exemplu
a NU este mai mare decât b:not pentru a verifica dacă a NU este mai mare decât b.
Ieșire: program Python complet
a = 33
b = 200
if not a > b:
print("a NU este mai mare decât b")
Combinarea mai multor operatori
O singură expresie poate conține mai mulți operatori logici. Python îi tratează într-o ordine fixă: mai întâi not, apoi and și la final or.
Exemplu
and, or și not:and, or și not pentru a verifica dacă se aplică o reducere, în funcție de vârstă, statutul de student și codul de reducere.
Ieșire: program Python complet
age = 25
is_student = False
has_discount_code = True
if (age < 18 or age > 65) and not is_student or has_discount_code:
print("Se aplică reducerea!")
Tabele de adevăr
Aceste tabele arată rezultatul fiecărui operator pentru fiecare pereche de valori:
Tabelul de adevăr al operatorului and
| Condiția 1 | Condiția 2 | Rezultat |
|---|---|---|
| True | True | True |
| True | False | False |
| False | True | False |
| False | False | False |
Tabelul de adevăr al operatorului or
| Condiția 1 | Condiția 2 | Rezultat |
|---|---|---|
| True | True | True |
| True | False | True |
| False | True | True |
| False | False | False |
Folosirea parantezelor pentru claritate
Când o expresie combină mai mulți operatori logici, parantezele arată ce vrei să spui și decid ce se evaluează mai întâi.
Exemplu
Ieșire: program Python complet
temperature = 25
is_raining = False
is_weekend = True
if (temperature > 20 and not is_raining) or is_weekend:
print("O zi excelentă pentru activități în aer liber!")
Mai multe exemple
Exemplu
Ieșire: program Python complet
username = "Tobias"
password = "secret123"
is_verified = True
if username and password and is_verified:
print("Autentificare reușită")
else:
print("Autentificare eșuată")
Exemplu
and pentru a verifica dacă un scor se află într-un interval valid (0-100).
Ieșire: program Python complet
score = 85
if score >= 0 and score <= 100:
print("Scor valid")
else:
print("Scor invalid")