Ciclo While in Python
Il ciclo while
è una struttura di controllo fondamentale in Python che consente di eseguire un blocco di codice ripetutamente fintanto che una certa condizione è vera. Questo tipo di ciclo è ideale quando il numero di iterazioni non è noto in anticipo. Esploriamo dettagliatamente il ciclo while
, compresa la sintassi, gli esempi di utilizzo e le considerazioni sulle condizioni.
Sintassi del Ciclo while
La struttura del ciclo while
è la seguente:
while condizione:
# Blocco di codice da eseguire finché la condizione è vera
contatore = 0
while contatore < 5:
print("Iterazione:", contatore)
contatore += 1
In questo esempio, il blocco di codice all’interno del ciclo while
verrà eseguito finché la condizione contatore < 5
è vera. Ogni volta che il blocco viene eseguito, il valore del contatore viene incrementato di 1.
Utilizzo del Ciclo while
Il ciclo while
è utile quando vuoi ripetere un’azione finché una certa condizione è soddisfatta. Ad esempio, puoi utilizzarlo per eseguire un’elaborazione fino a quando non si raggiunge un certo stato o condizione desiderata.
saldo = 1000
tasso_interesse = 0.05
while saldo < 2000:
saldo += saldo * tasso_interesse
print("Saldo attuale:", saldo)
In questo esempio, il ciclo while
viene utilizzato per calcolare l’accumulo di interessi fino a quando il saldo non supera $2000.
Ciclo while Infinito
Attenzione ai cicli while
infiniti, in cui la condizione non diventa mai falsa. Questo può causare l’esecuzione continua del blocco di codice, bloccando il programma.
# Attenzione: Ciclo infinito!
while True:
print("Questo è un ciclo infinito!")
Cicli Annidati e Cicli con Istruzioni Condizionali
Puoi annidare cicli while
all’interno di altri cicli while
o all’interno di strutture di controllo come le istruzioni if
per gestire situazioni più complesse.
Esempio di Ciclo Annidato:
fila = 1
while fila <= 3:
posto = 1
while posto <= 5:
print("Fila:", fila, "- Posto:", posto)
posto += 1
fila += 1
Esempio di Ciclo con Istruzione Condizionale:
contatore = 0
while contatore < 10:
if contatore % 2 == 0:
print(contatore, "è pari")
else:
print(contatore, "è dispari")
contatore += 1
Istruzioni break, continue ed else nel Ciclo while
- L’istruzione
break
interrompe un ciclowhile
prematuramente se si verifica una condizione. - L’istruzione
continue
passa all’iterazione successiva del ciclo senza eseguire il resto del blocco di codice. - L’istruzione
else
con un ciclowhile
esegue un blocco di codice una volta che la condizione diventa falsa.
Esempio con break
:
tentativi = 0
while tentativi < 3:
password = input("Inserisci la password: ")
if password == "segreta":
print("Accesso consentito")
break
else:
print("Password errata")
tentativi += 1
Esempio con continue
:
contatore = 0
while contatore < 5:
contatore += 1
if contatore == 3:
continue
print("Valore:", contatore)
Esempio con else
:
numero = 10
contatore = 0
while contatore < 5:
if numero == 5:
print("Numero trovato!")
break
else:
print("Numero non trovato ancora")
numero -= 1
contatore += 1
else:
print("Numero non trovato dopo 5 tentativi")
Conclusione
Il ciclo while
è uno strumento potente per eseguire iterazioni ripetute fino a quando una condizione è vera. Puoi utilizzarlo per gestire situazioni in cui il numero di iterazioni non è noto in anticipo, o per creare cicli più complessi annidando istruzioni condizionali e cicli.