In Python, il ciclo while è uno degli strumenti più importanti per creare dei cicli all’interno di un programma. Con il ciclo while, puoi eseguire un blocco di codice finché una certa condizione è vera. Vediamo come funziona e come puoi utilizzarlo nei tuoi programmi!
Sintassi del ciclo while in Python
La struttura del ciclo while è abbastanza semplice. Ecco come si presenta:
while condizione:
{
# blocco di codice da eseguire finché la condizione è vera
}
In questo caso, la condizione è espressa come un’espressione logica (come x < 10
). Se la condizione risulta vera, il ciclo continua a ripetersi; quando diventa falsa, il ciclo si interrompe e il programma procede con il codice successivo.
Utilizzo del ciclo while
Facciamo un esempio per vedere il ciclo while in azione:
x = 0;
while x < 5:
{
print(x);
x = x + 1;
}
In questo esempio, il ciclo stampa i numeri da 0
a 4
. Il valore di x
viene incrementato di 1 a ogni iterazione, finché la condizione x < 5
risulta vera.
Ciclo while infinito
È possibile scrivere un ciclo while infinito quando la condizione non diventa mai falsa. Per esempio:
while True:
{
print("Questo ciclo non si fermerà mai!");
}
Il ciclo continuerà all'infinito finché non lo interrompi manualmente o utilizzi un'istruzione speciale come break, che vedremo più avanti.
Cicli annidati e cicli con istruzioni condizionali
Puoi anche annidare i cicli while all'interno di altri cicli, creando delle strutture più complesse. Ecco un esempio:
i = 1;
while i <= 3:
{
j = 1;
while j <= 3:
{
print(f"i = {i}, j = {j}");
j = j + 1;
}
i = i + 1;
}
Questo codice produrrà una tabella di valori per i
e j
, mostrando come funziona l'annidamento dei cicli. Inoltre, puoi combinare i cicli con delle istruzioni condizionali, come nel seguente esempio:
x = 0;
while x < 10:
{
if x % 2 == 0:
{
print(f"{x} è pari");
}
else:
{
print(f"{x} è dispari");
}
x = x + 1;
}
Istruzioni break, continue ed else nel ciclo while
Ci sono delle istruzioni speciali che puoi utilizzare all'interno di un ciclo while per controllare meglio il suo flusso:
- break: interrompe il ciclo e fa uscire immediatamente dal blocco di codice.
- continue: salta l'iterazione corrente e passa direttamente alla successiva.
- else: puoi aggiungere un blocco else che viene eseguito quando la condizione del ciclo diventa falsa.
Ecco un esempio che utilizza break e continue:
x = 0;
while x < 10:
{
if x == 5:
{
break; // Interrompe il ciclo se x è uguale a 5
}
if x % 2 == 0:
{
x = x + 1;
continue; // Salta l'iterazione se x è pari
}
print(x);
x = x + 1;
}
In questo esempio, il ciclo si interrompe quando x
raggiunge 5
e salta i numeri pari grazie a continue.