Salt la conținutul principal
Modulul 1 · Lecția 3 din 43/36 în curs~10 min
Lecții din modul (3/4)

Condiționale: if, elif, else

Condiționalele vă permit să rulați cod diferit pe baza valoarea unei expresii booleene. În Python sunt scrise cu if, elif (scurtătura pentru „altfel dacă”) și else.

Forma de bază

Python
eta = 18
if eta >= 18:
    messaggio = "maggiorenne"
else:
    messaggio = "minorenne"

Observa:

  • după condiție există întotdeauna un colon :;
  • blocul „în interiorul” if este identificat prin indentație (4 spații);
  • nu aveți nevoie de paranteze în jurul condiției (deși sunt permise).

Mai multe filiale cu elif

Python
voto = 7
if voto >= 9:
    giudizio = "ottimo"
elif voto >= 7:
    giudizio = "buono"
elif voto >= 6:
    giudizio = "sufficiente"
else:
    giudizio = "insufficiente"

Ramurile elif sunt evaluate în ordinea în care le scrieți și se opresc la primul care se dovedește a fi adevărat.

Expresie condiționată (ternară)

Pentru cazuri simple, puteți scrie totul pe o singură linie:

Python
eta = 20
messaggio = "maggiorenne" if eta >= 18 else "minorenne"

Se citește firesc în engleză: "maggiorenne if eta >= 18 else minorenne".

Valori „adevărat”/ „fals”.

O condiție nu trebuie să fie o comparație: orice valoare poate fi folosit ca o condiție. Acestea sunt considerate false: False, None, 0, "", [], {}. Orice altceva este adevărat.

Python
nome = "Ada"
if nome:
    saluto = f"Ciao {nome}!"
else:
    saluto = "Ciao sconosciuto!"

Expresii condiționate (operator ternar)

Python acceptă o construcție compactă if-else cu o singură linie, care acționează ca operator ternar găsit în alte limbi:

Python
result = "Even" if n % 2 == 0 else "Odd"

Acest lucru vă păstrează codul concis atunci când pur și simplu trebuie să atribuiți o valoare bazată pe o condiție.

Încercați-l singur

Exercițiu#python.m1.l3.e1
Încercări: 0Se încarcă…

Având în vedere „număr = 15”, atribuiți „semnului” șirul „pozitiv” dacă numărul este > 0, „zero” dacă este 0, „negativo” în caz contrar. Evaluează `semn`.

Se încarcă editorul...
Afișează indiciu

Trei ramuri: > 0, == 0, altfel.

Soluție disponibilă după 3 încercări

Exercițiu de revizuire

Exercițiu#python.m1.l3.e2
Încercări: 0Se încarcă…

Având în vedere `varsta = 20`, atribuiți `categoriei` șirul 'maggiorenne' sau 'minorenne' folosind expresia ternară (dacă/altfel pe o singură linie).

Se încarcă editorul...
Afișează indiciu

Sintaxă: value_if_true if condition else value_if_false

Soluție disponibilă după 3 încercări

Provocare suplimentară

Exercițiu#python.m1.l3.e3
Încercări: 0Se încarcă…

Write a conditional structure that checks if the variable `x` (initialized to `-5`) is greater than 0, less than 0, or equal to 0. Assign the string `'positive'`, `'negative'`, or `'zero'` to `sign` accordingly. Finally, evaluate `sign`.

Se încarcă editorul...
Afișează indiciu

Utilizați if x > 0:, elif x < 0: și else: pentru a gestiona cele trei cazuri.

Soluție disponibilă după 3 încercări