Înapoi la blog
#condiționale#if#python#fundamente

Cum funcționează instrucțiunile condiționale (if, else)

Învață cum iau decizii programele cu if, elif și else. Ghid pentru începători despre condiționale, operatori de comparație și logici, cu exemple în Python.

Până acum programele noastre executau pașii unul după altul, mereu la fel. Dar viața reală e plină de decizii: dacă plouă, iau umbrela. Programele iau și ele decizii, iar instrumentul pentru asta sunt instrucțiunile condiționale: if, elif și else.

Ce face un if

Un if verifică o condiție. Dacă e adevărată, execută un bloc de cod. Dacă nu, îl sare.

varsta = 20

if varsta >= 18:
    print("Ești major.")

Condiția varsta >= 18 e adevărată, deci mesajul se afișează. Dacă varsta ar fi fost 15, programul nu ar fi afișat nimic.

Atenție la indentare! În Python, spațiile din fața liniei arată ce cod aparține lui if. Indentarea greșită e cea mai frecventă eroare a începătorilor.

Adăugăm else

else spune ce să se întâmple când condiția e falsă:

varsta = 15

if varsta >= 18:
    print("Ești major.")
else:
    print("Ești minor.")

Acum programul are mereu un răspuns, indiferent de valoare. Una dintre cele două ramuri se execută întotdeauna.

Mai multe cazuri cu elif

Când ai mai mult de două variante, folosești elif (prescurtare de la "else if"):

nota = 8

if nota >= 9:
    print("Excelent!")
elif nota >= 7:
    print("Bine.")
elif nota >= 5:
    print("Ai trecut.")
else:
    print("Trebuie să mai exersezi.")

Python verifică condițiile în ordine și se oprește la prima adevărată. Pentru nota 8, prima condiție (≥ 9) e falsă, a doua (≥ 7) e adevărată — deci afișează "Bine." și ignoră restul.

Operatori de comparație

Condițiile se construiesc cu operatori care întorc adevărat sau fals:

OperatorÎnseamnăExemplu
==egal cux == 5
!=diferit dex != 5
>mai marex > 5
<mai micx < 5
>=mai mare sau egalx >= 5
<=mai mic sau egalx <= 5

Atenție: = atribuie o valoare, iar == compară. Confundarea lor e o greșeală clasică.

Combinăm condiții cu and, or, not

Uneori o singură condiție nu e de ajuns:

varsta = 17
are_acord = True

if varsta >= 18 or are_acord:
    print("Poate participa.")

if varsta >= 16 and varsta < 18:
    print("Are între 16 și 18 ani.")
  • and — ambele condiții trebuie să fie adevărate;
  • or — măcar una trebuie să fie adevărată;
  • not — inversează: not True devine False.

Un exemplu complet

Hai să facem un mic program care clasifică un număr:

numar = int(input("Scrie un număr: "))

if numar > 0:
    print("Numărul este pozitiv.")
elif numar < 0:
    print("Numărul este negativ.")
else:
    print("Numărul este zero.")

Trei ramuri, fiecare cu rolul ei. Indiferent ce număr scrii, exact unul dintre mesaje apare.

Greșeli de evitat

  1. Uiți : la finalul liniei cu if — Python dă eroare.
  2. Indentare inconsistentă — amesteci spații și taburi.
  3. Folosești = în loc de == la comparație.
  4. Pui elif fără if înainte — elif nu poate exista singur.

Concluzie

Condiționalele dau programelor capacitatea de a lua decizii: if verifică, elif adaugă alternative, else prinde restul cazurilor. Împreună cu operatorii de comparație și logici, poți modela aproape orice regulă din lumea reală.

La ByteSchool exersezi aceste concepte pe probleme reale, pas cu pas, alături de mentori care lucrează în companii mari din tehnologie. Așa fundamentele devin reflexe, iar tu treci ușor la proiecte tot mai ambițioase.