Python přerušit, pokračovat, předat příkazy s příklady

⚡ Chytré shrnutí

Python Příkazy break, continue a pass řídí tok smyček. Příkaz break ukončuje smyčku, continue přeskočí aktuální iteraci a pass funguje jako zástupný symbol, který při spuštění uvnitř smyček, funkcí nebo tříd nedělá nic.

  • 🔘 Přestávka: Příkaz break okamžitě zastaví smyčku a přesune řízení na první řádek za ní.
  • ☑️ Pokračovat: Příkaz continue přeskakuje zbytek aktuální iterace a spustí další.
  • (Tj. Pass: Příkaz pass nedělá nic a funguje jako zástupný symbol pro kód přidaný později.
  • 🧪 Vnořené smyčky: Přerušení nebo pokračování ovlivňuje pouze nejvnitřnější smyčku a vnější smyčky zůstávají běžet.
  • 🛠️ Obě smyčky: Všechny tři příkazy fungují uvnitř smyček for a while a mění tak normální tok iterací.
  • 🤖 Pomoc s umělou inteligencí: Asistenti umělé inteligence a GitHub Copilot navrhují a vysvětlují správné použití příkazů break, continue a pass.

Python přerušit, pokračovat, předat prohlášení

Koncept smyček je dostupný téměř ve všech programovacích jazycích. Python smyčky pomáhají při iteraci přes seznam, n-tici, řetězec, slovník a množinu. Jsou podporovány dva typy smyček Python „pro“ a „zatímco“. Blok kódu se uvnitř smyčky provede několikrát, dokud podmínka selže.

Příkazy řízení smyčky přeruší tok provádění a ukončí/přeskočí iteraci podle našich potřeb. Python break a continue se používají uvnitř smyčky ke změně toku smyčky oproti standardnímu postupu.

Smyčka for nebo while má opakovat, dokud daná podmínka selže. Když použijete příkaz break nebo continue, změní se tok smyčky oproti normálnímu způsobu.

Python prohlášení o přerušení

Příkaz break se stará o ukončení cyklu, ve kterém je použit. Pokud je příkaz break použit uvnitř vnořených smyček, aktuální smyčka se ukončí a tok bude pokračovat s následným kódem, který následuje po smyčce.

Vývojový diagram pro příkaz break je následující:

Python prohlášení o přerušení

Následují kroky zahrnuté ve vývojovém diagramu.

Krok 1) Spustí se provádění smyčky.

Krok 2) Pokud je podmínka smyčky pravdivá, provede se krok 2, ve kterém se provede tělo smyčky.

Krok 3) Pokud má tělo smyčky příkaz break, smyčka se ukončí a přejde ke kroku 6.

Krok 4) Poté, co je podmínka smyčky provedena a hotovo, přejde k další iteraci v kroku 4.

Krok 5) Pokud je podmínka smyčky nepravdivá, smyčka se ukončí a přejde se ke kroku 6.

Krok 6) Konec smyčky.

Průběh provádění příkazu přerušení

Když se smyčka for začne provádět, zkontroluje podmínku if. Li pravdivý, příkaz break se provede a smyčka for se ukončí. Pokud je podmínka nepravdivá, provede se kód uvnitř smyčky for.

Průběh provádění příkazu přerušení

Když se cyklus while spustí, zkontroluje if-podmínku; Pokud to je pravda, Příkaz break se provede a smyčka while se ukončí. Pokud je podmínka nepravdivá, provede se kód uvnitř smyčky while.

Průběh provádění příkazu přerušení

Příklad: Break příkaz uvnitř for-loop

Seznam my_list = ['Siya', 'Tiya', 'Guru', 'Dakš', 'Rija', 'Guru'] se smyčkou opakuje pomocí cyklu for. Zajímá nás hledání názvu 'Guru'ze seznamu muj_seznam.'

Uvnitř cyklu for porovnává podmínka if každou položku ze seznamu s názvem 'Guru'. Pokud se podmínka stane pravdivou, provede se příkaz break a smyčka se ukončí.'

Pracovní příklad s použitím příkazu break je uveden níže:

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')

Očekávaný výstup:

Siya
Tiya
Guru
Found the name Guru
Loop is Terminated

Příklad: Příkaz Break uvnitř while-loop

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')

Očekávaný výstup:

Siya
Tiya
Guru
Found name Guru
After while-loop exit

Příklad: Příkaz Break uvnitř vnořených smyček

V příkladu máme 2 smyčky for. Obě smyčky for iterují z rozsahu 0 až 3. Do druhé smyčky for jsme přidali podmínku, že pokud je hodnota druhého indexu for-loop 2, měla by se zlomit.

Takže kvůli příkazu break nebude druhá smyčka for nikdy iterovat pro 2 a 3.

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

Očekávaný výstup:

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 pokračovat v prohlášení

Jedno pokračovat příkaz přeskočí kód, který následuje za ním, a ovládací prvek je předán zpět na začátek pro další iteraci.

Syntaxe:

continue

Pokračujte v vývojovém diagramu

Python pokračovat v prohlášení

Následují kroky zahrnuté ve vývojovém diagramu.

Krok 1) Spustí se provádění smyčky.

Krok 2) Spuštění kódu uvnitř smyčky bude provedeno. Pokud je uvnitř smyčky pokračující příkaz, řízení se vrátí ke kroku 4, tj. na začátek smyčky pro další iteraci.

Krok 3) Spuštění kódu uvnitř smyčky bude provedeno.

Krok 4) Pokud je v těle uveden příkaz continue nebo je proveden cyklus, zavolá se další iterace.

Krok 5) Jakmile je provedení smyčky dokončeno, smyčka se ukončí a přejde ke kroku 7.

Krok 6) Pokud podmínka smyčky v kroku 1 selže, smyčka se opustí a přejde se ke kroku 7.

Krok 7) Konec smyčky.

Pokračovat v toku provádění příkazu

Smyčka for prochází dané pole my_list. Uvnitř smyčky for se provede podmínka if. Pokud je podmínka splněna pravdivý, provede se příkaz continue a ovládací prvek přejde na začátek cyklu pro další iteraci.

Tok kódu je znázorněn níže:

Pokračovat v toku provádění příkazu

Když se cyklus while spustí, zkontroluje podmínku if, pokud je pravda, Příkaz continue se provede. Ovládací prvek se pro další iteraci vrátí na začátek smyčky while. Pokud je podmínka nepravdivá, provede se kód uvnitř smyčky while.

Tok kódu je znázorněn níže:

Pokračovat v toku provádění příkazu

Příklad: Pokračujte uvnitř smyčky for

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

Očekávaný výstup:

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

Příklad: Pokračujte uvnitř smyčky while

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

Očekávaný výstup:

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

Příklad: Pokračujte uvnitř vnořené smyčky

Níže uvedený příklad ukazuje použití 2 for-loops. Obě for-loops iterují z rozsahu 0 až 3. Ve druhém for-loop je podmínka, že pokud je hodnota druhého for-loop indexu 2, měla by pokračovat. Takže kvůli pokračovat příkaz, druhý for-loop přeskočí iteraci pro 2 a pokračuje pro 3.

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

Očekávaný výstup:

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 projít prohlášení

Python pass se používá jako zástupný symbol uvnitř smyček, funkcí, třídy, if-příkazu, který má být implementován později.

Syntax

pass

Co je prohlášení pass in Python?

Python pass je nulový příkaz. Když Python interpret narazí na příkaz pass, nic nedělá a je ignorován.

Kdy použít příkaz pass?

Představte si, že máte funkci nebo třídu s prázdným tělem. Plánujete napsat kód v budoucnu. The Python interpret vyvolá chybu, pokud narazí na prázdné tělo.

Komentář lze také přidat do těla funkce nebo třídy, ale interpret ignoruje komentář a vyvolá chybu.

Příkaz pass lze použít uvnitř těla funkce nebo těla třídy. Během provádění interpret, když narazí na příkaz pass, ignoruje a pokračuje bez chyby.

Příklad: příkaz pass uvnitř funkce

V příkladu je průchod přidán do funkce. Provede se, když je funkce volána, jak je uvedeno níže:

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

Očekávaný výstup:

pass inside function

Příklad: příkaz pass uvnitř třídy

V níže uvedeném příkladu jsme vytvořili pouze prázdnou třídu, která má příkaz print následovaný příkazem pass. Příkaz pass je známkou toho, že kód uvnitř třídy „My_Class“ bude implementován v budoucnu.

classMy_Class:
print("Inside My_Class")    
pass

Výstup:

Inside My_Class

Příklad: příkaz pass uvnitř smyčky

V níže uvedeném příkladu je řetězec 'Guru' se používá uvnitř smyčky for. Podmínka if kontroluje znak 'r' a volá příkaz print následovaný příkazem pass.

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

Očekávaný výstup:

G
u
Pass executed
r
u

Příklad: příkaz pass uvnitř if-loop

V příkladu pokud smyčka zkontroluje hodnotu a a pokud je podmínka pravdivá, jde a vypíše příkaz „průchod proveden“ následovaný průchodem.

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

Očekávaný výstup:

pass executed

Kdy použít příkaz break and continue?

  • A rozbít při použití uvnitř smyčky smyčku ukončí a ukončí. Pokud se použije uvnitř vnořených smyček, vypadne z aktuální smyčky.
  • A pokračovat příkaz zastaví aktuální provádění při použití uvnitř smyčky a ovládací prvek se vrátí na začátek smyčky.

Hlavní rozdíl mezi příkazem break a continue spočívá v tom, že když se objeví klíčové slovo break, opustí smyčku.

V případě klíčového slova continue bude aktuální probíhající iterace zastavena a bude pokračovat další iterací.

Nejčastější dotazy

Příkaz continue přeskočí zbytek aktuální iterace smyčky a přeskočí na další. Příkaz pass nedělá vůbec nic – je to pouze zástupný symbol, který udržuje smyčku, funkci nebo třídu syntakticky platnou.

Příkaz break ukončí pouze nejvnitřnější smyčku, která jej obsahuje, takže všechny vnější smyčky běží dál. Chcete-li ukončit několik smyček najednou, použijte proměnnou flag nebo přesuňte smyčky do funkce a vraťte se.

Ano. Blok s funkcí else v smyčce se spustí pouze tehdy, když smyčka skončí normálně bez provedení přerušení. Je užitečný pro logiku vyhledávání, například pro výpis zprávy „nenalezeno“ po kontrole všech položek v sekvenci.

Python vyvolává SyntaxError, protože příkazy break a continue jsou platné pouze uvnitř smyčky for nebo while. Pokud potřebujete zástupný symbol mimo smyčku, použijte místo něj příkaz pass, který je povolen všude, kde se očekává příkaz.

Jakmile se provede příkaz break nebo continue, řízení opouští aktuální iteraci, takže příkazy napsané za nimi na následujících řádcích jsou nedostupné. Ve výše uvedených příkladech se volání print() po příkazu break nikdy nespustí a je to fakticky mrtvý kód.

Příkaz break ukončí nejbližší ohraničující smyčku, ale ponechá funkci v chodu. Příkaz return okamžitě ukončí celou funkci, předá zpět hodnotu a zároveň ukončí všechny smyčky uvnitř dané funkce.

Asistenti umělé inteligence, jako je ChatGPT, generují kód pro řízení smyčky z prostého popisu, vysvětlují, proč smyčka končí dříve, označují nesprávně umístěné příkazy break nebo continue a navrhují, zda pass, continue nebo break nejlépe odpovídá vaší logice.

Ano. GitHub Copilot automaticky dokončuje příkazy break, continue a pass z komentáře nebo okolního kódu. Nástroje Agentic AI jdou ještě dál, refaktorují tok smyčky, odstraňují nefunkční kód po break a automaticky opravují chyby v řízení toku v celém souboru.

Shrňte tento příspěvek takto: