Break e continue in Python sono due modi per in­ter­rom­pe­re un ciclo. Spesso questi comandi fun­zio­na­no insieme a un’istru­zio­ne if.

A cosa servono break e continue in Python?

Come in molti linguaggi di pro­gram­ma­zio­ne web, sono noti il ciclo while in Python e il ciclo for in Python. Con­sen­to­no alle/agli utenti di ripetere au­to­ma­ti­ca­men­te compiti ben definiti all’interno di un quadro pre­de­fi­ni­to. Come ulteriore fattore, alcuni comandi possono in­fluen­za­re e per­fe­zio­na­re i cicli ri­sul­tan­ti. Buoni esempi di procedure di questo tipo sono break e continue in Python. Queste due istru­zio­ni in­ter­ven­go­no durante l’ese­cu­zio­ne di un ciclo e offrono la pos­si­bi­li­tà di in­ter­rom­pe­re o uscire dal ciclo se si verifica un de­ter­mi­na­to evento. In questo modo, nel caso di un’influenza esterna in­de­si­de­ra­ta, il ciclo viene in­ter­rot­to anche se non ha ancora raggiunto la fine.

Cos’è break in Python?

L’istru­zio­ne break in Python permette di in­ter­rom­pe­re com­ple­ta­men­te un ciclo non appena una con­di­zio­ne esterna è data o non è più data. Viene uti­liz­za­ta all’interno del codice e spesso è collocata dopo un’istru­zio­ne if.

Come funziona break in Python

Poiché l’istru­zio­ne break in Python è inserita nel ciclo, di solito viene applicata solo dopo uno o più passaggi. In­nan­zi­tut­to, il ciclo viene avviato e viene ve­ri­fi­ca­ta la con­di­zio­ne me­mo­riz­za­ta per la con­ti­nua­zio­ne o la ter­mi­na­zio­ne. Se la con­di­zio­ne non è vera (ovvero false), il ciclo viene in­ter­rot­to a questo punto. Se, invece, la con­di­zio­ne è vera (quindi true), il ciclo viene eseguito com­ple­ta­men­te una volta e poi ri­co­min­cia­to con i valori mo­di­fi­ca­ti. È qui che entra in gioco break in Python. Se la con­di­zio­ne definita è vera, il ciclo continua. Se invece la con­di­zio­ne è falsa, si esce dal ciclo a questo punto.

Esempio di break in Python

Un semplice esempio di break in Python è un normale mec­ca­ni­smo di conteggio. In questo esempio, in un ciclo for si conta da 0 a 9. La con­di­zio­ne per questo ciclo è che il numero ri­sul­tan­te sia inferiore a 10. Pro­ba­bil­men­te conoscete già questa di­spo­si­zio­ne se avete seguito un tutorial su Python. Ora potete inserire un’istru­zio­ne break in Python che indica come il ciclo deve essere terminato quando si raggiunge il numero 5. Anche se 5 è inferiore a 10 e quindi rientra nelle con­di­zio­ni spe­ci­fi­ca­te, il ciclo terminerà e si con­ti­nue­rà con il codice. Si presenta così:

for num in range(10):
    if num == 5:
        print ("La condizione di terminazione è soddisfatta")
        break
    print(f"Il numero corrente è {num}")
print(" Proseguimento dopo il ciclo")

In questo modo il codice appare suc­ces­si­va­men­te nel modo seguente:

Il numero corrente è 0
Il numero corrente è 1
Il numero corrente è 2
Il numero corrente è 3
Il numero corrente è 4
La condizione di terminazione è soddisfatta
Proseguimento dopo il ciclo

Cos’è continue in Python?

L’istru­zio­ne continue in Python in­ter­rom­pe il ciclo proprio come break, ma lo riprende non appena viene emesso un nuovo valore. In questo modo, solo una parte del ciclo viene saltata se viene sod­di­sfat­ta una de­ter­mi­na­ta con­di­zio­ne di ter­mi­na­zio­ne. Viene uti­liz­za­ta anche all’interno del ciclo e spesso è collocata dopo un’istru­zio­ne if. È par­ti­co­lar­men­te utile se de­si­de­ra­te escludere i fattori che si ve­ri­fi­ca­no più fre­quen­te­men­te, ma volete comunque che il ciclo continui. Grazie a continue in Python il codice si presenta com­ples­si­va­men­te più ordinato e chiaro e si possono evitare vari problemi che po­treb­be­ro sorgere con questo lin­guag­gio di pro­gram­ma­zio­ne.

Come funziona continue in Python?

Anche la modalità generale di fun­zio­na­men­to è simile a quella di break in Python. Il ciclo viene avviato e la con­di­zio­ne viene in­ter­ro­ga­ta per ve­ri­fi­ca­re se è true o false. Nor­mal­men­te, la procedura si ripete finché la con­di­zio­ne non diventa falsa. Con continue, tuttavia, si pone una domanda in­ter­me­dia. Se la risposta soddisfa la con­di­zio­ne ag­giun­ti­va, il ciclo prosegue nor­mal­men­te. Tuttavia, se la con­di­zio­ne continue in Python non è sod­di­sfat­ta, il ciclo riparte dall’inizio e viene eseguito con un nuovo valore.

Esempio di continue in Python

Ana­lo­ga­men­te all’esempio pre­ce­den­te, un ciclo può essere creato anche con continue in Python. Anche questa volta si suppone che il ciclo conti iniziando da 0 e fer­man­do­si a 9. Anche in questo caso la con­di­zio­ne è che il numero sia inferiore a 10. Tuttavia, se il mec­ca­ni­smo di conteggio raggiunge il valore 5, il ciclo deve essere in­ter­rot­to, ma non terminato. Il codice viene quindi scritto così:

for num in range(10):
    if num == 5:
        continue
    print(f"Il numero corrente è {num}")
print("Proseguimento dopo il ciclo")

Il codice che ne risulta è quindi il seguente:

Il numero corrente è 0
Il numero corrente è 1
Il numero corrente è 2
Il numero corrente è 3
Il numero corrente è 4
Il numero corrente è 6
Il numero corrente è 7
Il numero corrente è 8
Il numero corrente è 9
Proseguimento dopo il ciclo

Il ciclo conta quindi fino a 4, si in­ter­rom­pe a 5 e poi continua a contare nor­mal­men­te da 6 fino a 10. Quest’ultimo non soddisfa più la con­di­zio­ne generale del ciclo e viene di con­se­guen­za terminato.

Cos’è pass in Python?

Oltre a break e continue in Python, pass è un’altra istru­zio­ne che in­ter­vie­ne nel ciclo. Tuttavia, ciò ga­ran­ti­sce che una certa con­di­zio­ne venga ignorata. Di seguito vi ri­por­tia­mo una breve istru­zio­ne pass collegata all’esempio pre­ce­den­te:

for num in range(10):
    if num == 5:
        pass
    print(f"Il numero corrente è {num}")
print("Proseguimento dopo il ciclo")

Si ottiene il risultato seguente:

Il numero corrente è 1
Il numero corrente è 2
Il numero corrente è 3
Il numero corrente è 4
Il numero corrente è 5
Il numero corrente è 6
Il numero corrente è 7
Il numero corrente è 8
Il numero corrente è 9
Proseguimento dopo il ciclo

Quindi, anche se il ciclo arriva a 5, il programma continua a fun­zio­na­re nor­mal­men­te. Se volete saperne di più sui possibili usi e sulle par­ti­co­la­ri­tà di questa istru­zio­ne, potete trovare tutte le in­for­ma­zio­ni im­por­tan­ti nell’articolo pass in Python della nostra Digital Guide.

Vai al menu prin­ci­pa­le