Python interrompere, continuare, passare istruzioni con esempi

โšก Riepilogo intelligente

Python Le istruzioni break, continue e pass controllano il flusso dei cicli. L'istruzione break termina un ciclo, continue salta l'iterazione corrente e pass funge da segnaposto che non fa nulla quando viene eseguito all'interno di cicli, funzioni o classi.

  • ๐Ÿ”˜ Rompere: L'istruzione break interrompe immediatamente un ciclo e sposta il controllo alla prima riga successiva.
  • โ˜‘๏ธ Continua: L'istruzione continue salta la parte restante dell'iterazione corrente e inizia la successiva.
  • โœ… Pass: L'istruzione pass non fa nulla e funge da segnaposto per il codice che verrร  aggiunto in seguito.
  • ๐Ÿงช Cicli annidati: Un'istruzione break o continue influisce solo sul ciclo piรน interno, lasciando in esecuzione i cicli esterni.
  • ๏ธ Entrambi i circuiti: Tutte e tre le istruzioni funzionano all'interno di cicli for e while per modificare il normale flusso di iterazione.
  • ๐Ÿค– Aiuto tramite intelligenza artificiale: Gli assistenti IA e GitHub Copilot suggeriscono e spiegano l'uso corretto di break, continue e pass.

Python interrompere, continuare, passare dichiarazioni

Il concetto di loop รจ disponibile in quasi tutti i linguaggi di programmazione. Python i cicli aiutano a scorrere un elenco, una tupla, una stringa, un dizionario e un set. Sono supportati due tipi di loop Python โ€œperโ€ e โ€œmentreโ€. Il blocco di codice viene eseguito piรน volte all'interno del ciclo finchรฉ la condizione fallisce.

Le istruzioni di controllo del ciclo interrompono il flusso di esecuzione e terminano/saltano l'iterazione secondo le nostre necessitร . Python break e continue vengono utilizzati all'interno del ciclo per modificare il flusso del ciclo rispetto alla sua procedura standard.

Un ciclo for o while ha lo scopo di eseguire un'iterazione finchรฉ la condizione specificata fallisce. Quando si utilizza un'istruzione break o continue, il flusso del ciclo viene modificato rispetto al normale.

Python dichiarazione di interruzione

L'istruzione break si occupa di terminare il ciclo in cui viene utilizzata. Se l'istruzione break viene utilizzata all'interno di cicli nidificati, il ciclo corrente viene terminato e il flusso continuerร  con il codice seguito che segue il ciclo.

Il diagramma di flusso per l'istruzione break รจ il seguente:

Python dichiarazione di interruzione

Di seguito sono riportati i passaggi del diagramma di flusso.

Passo 1) Inizia l'esecuzione del ciclo.

Passo 2) Se la condizione del ciclo รจ vera, verrร  eseguito il passaggio 2, in cui verrร  eseguito il corpo del ciclo.

Passo 3) Se il corpo del ciclo contiene un'istruzione break, il ciclo uscirร  e andrร  al passaggio 6.

Passo 4) Una volta eseguita e completata la condizione del ciclo, si procederร  all'iterazione successiva nel passaggio 4.

Passo 5) Se la condizione del ciclo รจ falsa, uscirร  dal ciclo e andrร  al passaggio 6.

Passo 6) Fine del ciclo.

Interrompere il flusso di esecuzione delle istruzioni

Quando il ciclo for inizia l'esecuzione, controllerร  la condizione if. Se veroL'istruzione break viene eseguita e il ciclo for termina. Se la condizione รจ falsa, il codice all'interno del ciclo for viene eseguito.

Interrompere il flusso di esecuzione delle istruzioni

Quando viene eseguito il ciclo while, controllerร  la condizione if; se รจ vero, L'istruzione break viene eseguita e il ciclo while termina. Se la condizione รจ falsa, il codice all'interno del ciclo while verrร  eseguito.

Interrompere il flusso di esecuzione delle istruzioni

Esempio: istruzione Break all'interno del ciclo for

La lista mia_lista = ['Siya', 'Tiya', 'Guru', 'Daksh', 'Riya', 'Guru'] viene iterato utilizzando un ciclo for. Siamo interessati a cercare il nome 'Guru' dalla lista my_list.

All'interno del ciclo for, la condizione if confronta ogni elemento della lista con il nome 'GuruSe la condizione diventa vera, verrร  eseguita l'istruzione break e il ciclo verrร  terminato.

L'esempio di lavoro che utilizza l'istruzione break รจ mostrato di seguito:

my_list = ['Siya', 'Tiya', 'Guru', 'Daksh', 'Riya', 'Guru'] 

for i in range(len(my_list)):
    print(my_list[i])
    if my_list[i] == 'Guru':
        print('Found the name Guru')
        break
        print('After break statement')

print('Loop is Terminated')

Uscita prevista:

Siya
Tiya
Guru
Found the name Guru
Loop is Terminated

Esempio: istruzione Break all'interno del ciclo while

my_list = ['Siya', 'Tiya', 'Guru', 'Daksh', 'Riya', 'Guru'] 
i = 0

while True:
    print(my_list[i])
    if (my_list[i] == 'Guru'):
        print('Found the name Guru')
        break
        print('After break statement')
    i += 1

print('After while-loop exit')

Uscita prevista:

Siya
Tiya
Guru
Found name Guru
After while-loop exit

Esempio: istruzione Break all'interno di cicli nidificati

Nell'esempio abbiamo 2 cicli for. Entrambi i cicli for eseguono un'iterazione da un intervallo compreso tra 0 e 3. Nel secondo ciclo for, abbiamo aggiunto una condizione in base alla quale se il valore del secondo indice del ciclo for รจ 2, dovrebbe interrompersi.

Quindi, a causa dell'istruzione break, il secondo ciclo for non eseguirร  mai l'iterazione per 2 e 3.

for i in range(4):
    for j in range(4):          
        if j==2:    
            break
        print("The number is ",i,j);  

Uscita prevista:

The number is  0 0
The number is  0 1
The number is  1 0
The number is  1 1
The number is  2 0
The number is  2 1
The number is  3 0
The number is  3 1

Python continuare la dichiarazione

Migliori continua L'istruzione salta il codice che la segue e il controllo viene passato all'inizio per l'iterazione successiva.

Sintassi:

continue

Continua il diagramma di flusso

Python continuare la dichiarazione

Di seguito sono riportati i passaggi del diagramma di flusso.

Passo 1) Inizia l'esecuzione del ciclo.

Passo 2) Verrร  eseguita l'esecuzione del codice all'interno del ciclo. Se c'รจ un'istruzione continua all'interno del ciclo, il controllo tornerร  al passo 4, cioรจ all'inizio del ciclo per l'iterazione successiva.

Passo 3) Verrร  eseguita l'esecuzione del codice all'interno del ciclo.

Passo 4) Se รจ presente un'istruzione continue o l'esecuzione del ciclo all'interno del corpo viene completata, chiamerร  l'iterazione successiva.

Passo 5) Una volta completata l'esecuzione del ciclo, il ciclo uscirร  e andrร  al passaggio 7.

Passo 6) Se la condizione del ciclo nel passaggio 1 fallisce, si uscirร  dal ciclo e si andrร  al passaggio 7.

Passo 7) Fine del ciclo.

Continuare il flusso di esecuzione delle istruzioni

Il ciclo for scorre l'array my_list fornito. All'interno del ciclo for, viene eseguita la condizione if. Se la condizione รจ vero, viene eseguita l'istruzione continue e il controllo passerร  all'inizio del ciclo per l'iterazione successiva.

Il flusso del codice รจ come mostrato di seguito:

Continuare il flusso di esecuzione delle istruzioni

Quando viene eseguito il ciclo while, controllerร  la condizione if, se lo รจ vero, L'istruzione continue viene eseguita. Il controllo tornerร  all'inizio del ciclo while per l'iterazione successiva. Se la condizione รจ falsa, verrร  eseguito il codice all'interno del ciclo while.

Il flusso del codice รจ come mostrato di seguito:

Continuare il flusso di esecuzione delle istruzioni

Esempio: continua all'interno del ciclo for

for i in range(10):    
    if i == 7:
        continue  
    print("The Number is :" , i)

Uscita prevista:

The Number is : 0
The Number is : 1
The Number is : 2
The Number is : 3
The Number is : 4
The Number is : 5
The Number is : 6
The Number is : 8
The Number is : 9

Esempio: continua all'interno del ciclo while

i = 0
while i <= 10:    
    if i == 7:
        i += 1
        continue  
    print("The Number is  :" , i)
    i += 1

Uscita prevista:

The Number is  : 0
The Number is  : 1
The Number is  : 2
The Number is  : 3
The Number is  : 4
The Number is  : 5
The Number is  : 6
The Number is  : 8
The Number is  : 9
The Number is  : 10

Esempio: continua all'interno del ciclo annidato

L'esempio seguente mostra l'utilizzo di 2 cicli for. Entrambi i cicli for eseguono un'iterazione da un intervallo compreso tra 0 e 3. Nel secondo ciclo for, esiste una condizione in base alla quale se il valore del secondo indice del ciclo for รจ 2, dovrebbe continua. Quindi a causa di continua istruzione, il secondo ciclo for salterร  l'iterazione per 2 e procederร  per 3.

for i in range(4):
    for j in range(4):          
        if j==2:    
            continue
        print("The number is ",i,j);

Uscita prevista:

The number is  0 0
The number is  0 1
The number is  0 3
The number is  1 0
The number is  1 1
The number is  1 3
The number is  2 0
The number is  2 1
The number is  2 3
The number is  3 0
The number is  3 1
The number is  3 3

Python dichiarazione di passaggio

Python L'istruzione pass viene utilizzata come segnaposto all'interno di cicli, funzioni, classi e istruzioni if โ€‹โ€‹che devono essere implementate in seguito.

Sintassi

pass

Cos'รจ l'istruzione pass in Python?

Python pass รจ un'istruzione nulla. Quando il Python L'interprete incontra l'istruzione pass, non fa nulla e viene ignorato.

Quando utilizzare l'istruzione pass?

Considera di avere una funzione o una classe con il corpo lasciato vuoto. Hai intenzione di scrivere il codice in futuro. IL Python l'interprete genererร  un errore se incontra un corpo vuoto.

รˆ anche possibile aggiungere un commento all'interno del corpo della funzione o della classe, ma l'interprete lo ignorerร  e genererร  un errore.

L'istruzione pass puรฒ essere utilizzata all'interno del corpo di una funzione o del corpo di una classe. Durante l'esecuzione l'interprete, quando incontra l'istruzione pass, la ignora e prosegue senza dare alcun errore.

Esempio: istruzione pass all'interno di una funzione

Nell'esempio il pass viene aggiunto all'interno della funzione. Verrร  eseguito quando la funzione viene chiamata come mostrato di seguito:

def my_func():
    print('pass inside function')
    pass
my_func()

Uscita prevista:

pass inside function

Esempio: istruzione pass all'interno della classe

Nell'esempio seguente, abbiamo creato solo la classe vuota che ha un'istruzione print seguita da un'istruzione pass. L'istruzione pass indica che il codice all'interno della classe โ€œMy_Classโ€ verrร  implementato in futuro.

classMy_Class:
print("Inside My_Class")    
pass

Produzione:

Inside My_Class

Esempio: istruzione pass all'interno del ciclo

Nell'esempio seguente, la stringa 'Guru' viene utilizzato all'interno del ciclo for. La condizione if controlla il carattere 'r' e chiama l'istruzione print seguita da pass.

# Pass statement in for-loop
test = "Guru"
for i in test: 
    if i == 'r': 
        print('Pass executed') 
        pass
    print(i)

Uscita prevista:

G
u
Pass executed
r
u

Esempio: istruzione pass all'interno del ciclo if

Nell'esempio il se ciclo controlla il valore di a e se la condizione รจ vera va e stampa l'istruzione "passaggio eseguito" seguita da pass.

a=1
if a==1:
    print('pass executed')
    pass

Uscita prevista:

pass executed

Quando utilizzare un'istruzione break e continue?

  • A rompere L'istruzione, se utilizzata all'interno del ciclo, terminerร  il ciclo e uscirร . Se utilizzato all'interno di cicli nidificati, uscirร  dal ciclo corrente.
  • A continua interromperร  l'esecuzione corrente quando utilizzata all'interno di un ciclo e il controllo tornerร  all'inizio del ciclo.

La differenza principale tra l'istruzione break e continue รจ che quando viene incontrata la parola chiave break, uscirร  dal ciclo.

In caso di parola chiave continue, l'iterazione corrente in esecuzione verrร  interrotta e procederร  con l'iterazione successiva.

DOMANDE FREQUENTI

L'istruzione continue salta la parte restante dell'iterazione corrente del ciclo e passa alla successiva. L'istruzione pass non fa assolutamente nulla: รจ solo un segnaposto che mantiene la validitร  sintattica di un ciclo, una funzione o una classe.

Un'istruzione break interrompe solo il ciclo piรน interno che la contiene, quindi tutti i cicli esterni continuano a essere eseguiti. Per interrompere piรน cicli contemporaneamente, utilizzare una variabile flag oppure spostare i cicli all'interno di una funzione e restituire il controllo.

Sรฌ. Un blocco loop else viene eseguito solo quando il ciclo termina normalmente senza eseguire un break. รˆ utile per la logica di ricerca, come ad esempio la visualizzazione di un messaggio di errore dopo aver controllato ogni elemento in una sequenza.

Python genera un SyntaxError, perchรฉ break e continue sono validi solo all'interno di un ciclo for o while. Se hai bisogno di un segnaposto al di fuori di un ciclo, usa invece l'istruzione pass, che รจ consentita ovunque sia prevista un'istruzione.

Una volta che break o continue vengono eseguiti, il controllo esce dall'iterazione corrente, quindi le istruzioni scritte dopo di essi sulle righe successive non sono piรน raggiungibili. Negli esempi precedenti, la chiamata print() dopo break non viene mai eseguita ed รจ di fatto codice morto.

Un'istruzione break esce dal ciclo piรน vicino che la racchiude, ma mantiene la funzione in esecuzione. Un'istruzione return esce immediatamente dall'intera funzione, restituendo un valore e terminando contemporaneamente tutti i cicli al suo interno.

Gli assistenti basati sull'intelligenza artificiale, come ChatGPT, generano codice di controllo dei cicli a partire da una semplice descrizione, spiegano perchรฉ un ciclo termina prematuramente, segnalano le istruzioni break o continue posizionate in modo errato e suggeriscono se pass, continue o break si adattano meglio alla logica del programma.

Sรฌ. GitHub Copilot completa automaticamente le parole "break", "continue" e "pass" da un commento o dal codice circostante. Gli strumenti di intelligenza artificiale di Agentic vanno oltre, rifattorizzando il flusso dei cicli, rimuovendo il codice morto dopo un'interruzione e correggendo automaticamente i bug di controllo del flusso in un intero file.

Riassumi questo post con: