Controllo di flusso
if
La struttura più importante è if.
Dopo if deve essere presente una condizione che produce un valore booleano, cioè True oppure False.
Python valuta la condizione:
- se il risultato è
True, esegue il blocco di codice interno aif; - se il risultato è
False, quel blocco non viene eseguito.
Esempio semplice:
eta = 20
if eta >= 18:
print("Sei maggiorenne")
In questo caso, la variabile “eta” contiene il valore di 20. Il valore è ovviamente maggiore di 18, quindi viene stampata la stringa “Sei maggiorenne”.
else
La struttura else viene usata insieme a if per indicare che cosa deve accadere quando la condizione di if risulta falsa.
Python valuta prima la condizione scritta dopo if:
- se la condizione è vera, esegue il blocco di
if; - se la condizione è falsa, esegue il blocco di
else.
In questo modo il programma può scegliere tra due comportamenti alternativi.
Esempio:
eta = 17
if eta >= 18:
print("Sei maggiorenne")
else:
print("Sei minorenne")
elif
Quando ci sono più casi possibili usiamo elif.
voto = 8
if voto < 6:
print("Insufficiente")
elif voto == 6:
print("Sufficiente")
elif voto <= 8:
print("Buono")
else:
print("Ottimo")
Attenzione all’indentazione
Ogni blocco (dentro e fuori dall’if) si definisce con l’indentazione. N.B. L’indentazione è definita con il tab e non con gli spazi!
if x > 3:
print("Dentro il blocco") # eseguito solo se x > 3
print("Fuori dal blocco") # eseguito sempre
Nel codice d’esempio, la prima print viene effettuata solo se x > 3, mentre la seconda viene sempre effettuata.
Ricapitoliamo
if,elif,elseservono per scegliere;- fare attenzione all’identazione del codice, per strutturare bene i blocchi del programma.