Ce face if / elif / else
if verifică o condiție. Dacă este adevărată, rulează blocul indentat de sub ea. Poți adăuga oricâte ramuri elif (prescurtare de la „else if”) și, la final, o ramură else pentru restul cazurilor. Se execută doar prima ramură adevărată.
Linia cu condiția se termină cu două puncte (:), iar blocul se indentează (de obicei cu 4 spații). Condițiile se combină cu and, or și not.
Valorile „goale” sunt considerate false: 0, "", [], {}, None. Pentru o alegere scurtă există și forma pe un rând: a if conditie else b.
Exemple
Exemplul 1: Nota la examen
nota = 8
if nota >= 9:
print("Excelent")
elif nota >= 7:
print("Bine")
elif nota >= 5:
print("Suficient")
else:
print("Picat")
Rezultat
Bine
Exemplul 2: Condiții combinate și valori goale
varsta = 20
are_bilet = True
cos = []
if varsta >= 18 and are_bilet:
print("Poți intra.")
if not cos:
print("Coșul este gol.")
Rezultat
Poți intra.
Coșul este gol.
Exemplul 3: Expresia condițională pe un rând
stoc = 0
mesaj = "În stoc" if stoc > 0 else "Stoc epuizat"
print(mesaj)
Rezultat
Stoc epuizat
Greșeli frecvente
- Uiți cele două puncte de la final:
if x > 5fără:dăSyntaxError. - Folosești
=în loc de==în condiție.=atribuie,==compară. - Amesteci tab-uri cu spații la indentare și primești
IndentationErrorsauTabError.
Comenzi înrudite
match / case: Compară o valoare cu mai multe modele (pattern matching), ca un switch mult mai puternic.and, or, not: Operatorii logici: „și”, „sau” și negația.for: Parcurge, pe rând, fiecare element dintr-o listă, text, dicționar sau alt obiect iterabil.while: Repetă un bloc de cod cât timp o condiție rămâne adevărată.