Python - Controllo del Flusso
Ciao a tutti, aspiranti esperti di Python! Oggi immergeremo nel mondo avventuroso del controllo del flusso in Python. Pensa al controllo del flusso come ai semafori della programmazione: esso dirige il flusso del tuo codice, indicandogli quando partire, fermarsi o prendere un deviato. Iniziamo!
Istruzioni di Decisione
Immagina di essere in un negozio di gelati. Devi decidere: cioccolato o vaniglia? Questo è esattamente ciò che fanno le istruzioni di decisione in Python: aiutano il tuo programma a fare scelte.
Laistruzione 'if'
L'istruzione 'if' è la forma più semplice di decisione. Ecco come funziona:
gusto_gelato = "cioccolato"
if gusto_gelato == "cioccolato":
print("Delizioso! Il cioccolato è il mio preferito!")
In questo esempio, se il gusto_gelato
è "cioccolato", verrà stampato il messaggio. Se non lo è, non accade nulla.
L'istruzione 'if-else'
Ma cosa fare se vogliamo eseguire qualcosa quando la condizione non è vera? Ecco dove entra in gioco 'else':
età = 15
if età >= 18:
print("Puoi votare!")
else:
print("Spiacente, sei troppo giovane per votare.")
Qui, se l'età è 18 o più, verrà stampato "Puoi votare!". Altrimenti, verrà stampato l'altro messaggio.
L'istruzione 'if-elif-else'
A volte, abbiamo bisogno di verificare più condizioni. Ecco dove 'elif' (abbreviazione di 'else if') si rivela utile:
punteggio = 85
if punteggio >= 90:
print("A")
elif punteggio >= 80:
print("B")
elif punteggio >= 70:
print("C")
else:
print("Necessita miglioramento")
Questo codice verifica il punteggio e stampa il grado corrispondente.
Istruzioni di Ciclo o Iterazione
I cicli sono come le caroselli per il tuo codice. Lasciano ripetere le azioni senza dover scrivere lo stesso codice più e più volte.
Il ciclo 'for'
Il ciclo 'for' è ottimo quando sai quanti volte vuoi ripetere qualcosa:
frutti = ["mela", "banana", "ciliegia"]
for frutto in frutti:
print(f"Amo il {frutto}!")
Questo ciclo stampa "Amo il [frutto]!" per ogni frutto nell'elenco.
Il ciclo 'while'
Il ciclo 'while' continua finché una condizione è vera:
conto = 0
while conto < 5:
print(f"Il conto è {conto}")
conto += 1
Questo stamperà il conto da 0 a 4.
Istruzioni di Salto
Le istruzioni di salto sono come passaggi segreti in un videogioco: ti permettono di saltare parti del tuo codice o uscire dai cicli in anticipo.
L'istruzione 'break'
'break' ti permette di uscire immediatamente da un ciclo:
for i in range(10):
if i == 5:
print("Trovato 5! Uscendo dal ciclo.")
break
print(i)
Questo stamperà numeri da 0 a 4, poi esce quando trova 5.
L'istruzione 'continue'
'continue' salta il resto della corrente iterazione e passa alla successiva:
for i in range(5):
if i == 2:
print("Saltando 2")
continue
print(i)
Questo stamperà tutti i numeri da 0 a 4, tranne 2.
L'istruzione 'pass'
'pass' è come un segnaposto. Non fa nulla, ma è utile quando hai bisogno di blocchi di codice vuoti:
for i in range(5):
if i == 2:
pass # TODO: Aggiungere gestione speciale per 2
else:
print(i)
Questo stamperà tutti i numeri tranne 2, dove non farà nulla (per ora).
Mettere Tutto Insieme
Ora, combiniamo questi concetti in un piccolo gioco divertente:
import random
numero_segreto = random.randint(1, 10)
tentativi = 0
while True:
ipotesi = int(input("Indovina il numero (1-10): "))
tentativi += 1
if ipotesi < numero_segreto:
print("Troppo basso!")
elif ipotesi > numero_segreto:
print("Troppo alto!")
else:
print(f"Hai indovinato in {tentativi} tentativi!")
break
if tentativi == 3:
print(f"Spiacente, hai esaurito i tentativi. Il numero era {numero_segreto}.")
break
Questo gioco utilizza un ciclo while, istruzioni if-elif-else e l'istruzione break per creare un gioco di indovinelli di numeri. È un ottimo esempio di come il controllo del flusso può creare programmi interattivi!
Sintesi
Ecco una tabella di riferimento rapida degli statement di controllo del flusso che abbiamo coperto:
Istruzione | Scopo |
---|---|
if | Fare una decisione basata su una condizione |
if-else | Scegliere tra due opzioni |
if-elif-else | Scegliere tra più opzioni |
for | Ripetere il codice un numero specifico di volte |
while | Ripetere il codice mentre una condizione è vera |
break | Uscire early da un ciclo |
continue | Saltare alla prossima iterazione di un ciclo |
pass | Non fare nulla (segnaposto) |
Ricorda, padroneggiare il controllo del flusso è come imparare a dirigere un'orchestra: ti dà la potenza di creare programmi complessi e belli da semplici istruzioni. Continua a praticare, e presto scriverai sinfonie in Python!
Credits: Image by storyset