Python break, continue, pass izjave s primjerima

⚡ Pametni sažetak

Python Naredbe break, continue i pass kontroliraju tok petlji. Naredba break završava petlju, continue preskače trenutnu iteraciju, a pass djeluje kao rezervirano mjesto koje ne radi ništa kada se izvršava unutar petlji, funkcija ili klasa.

  • 🔘 Pauza: Naredba break odmah zaustavlja petlju i premješta kontrolu u prvi redak nakon nje.
  • ☑️ Nastaviti: Naredba continue preskače ostatak trenutne iteracije i započinje sljedeću.
  • Proći: Naredba pass ne radi ništa i služi kao rezervirano mjesto za kod koji se dodaje kasnije.
  • 🧪 Ugniježđene petlje: Prekid ili nastavak utječe samo na najdublju petlju, ostavljajući vanjske petlje u radu.
  • 🛠️ Obje petlje: Sve tri naredbe rade unutar for-petlji i while-petlji kako bi promijenile normalan tok iteracije.
  • 🤖 Pomoć umjetne inteligencije: AI asistenti i GitHub Copilot predlažu i objašnjavaju ispravnu upotrebu break, continue i pass operatora.

Python break, continue, pass izjave

Koncept petlji dostupan je u gotovo svim programskim jezicima. Python petlje pomažu u iteraciji preko popisa, tuplea, niza, rječnika i skupa. Podržane su dvije vrste petlje Python "za" i "dok". Blok koda se izvršava više puta unutar petlje dok se uvjet ne ispuni.

Izjave kontrole petlje prekidaju tijek izvršenja i prekidaju/preskaču iteraciju prema našim potrebama. Python break i continue koriste se unutar petlje za promjenu tijeka petlje od standardne procedure.

Petlja for ili while je namijenjena za ponavljanje sve dok zadani uvjet ne ispadne. Kada koristite naredbu break ili continue, tok petlje se mijenja u odnosu na uobičajeni način.

Python izjava o prekidu

Naredba break brine se za prekid petlje u kojoj se koristi. Ako se naredba break koristi unutar ugniježđenih petlji, trenutna petlja se prekida, a tijek će se nastaviti s kodom koji slijedi nakon petlje.

Dijagram toka za break izjavu je sljedeći:

Python izjava o prekidu

Sljedeći su koraci uključeni u dijagram toka.

Korak 1) Započinje izvođenje petlje.

Korak 2) Ako je uvjet petlje istinit, izvršit će se korak 2, pri čemu će se izvršiti tijelo petlje.

Korak 3) Ako tijelo petlje ima naredbu break, petlja će izaći i otići na korak 6.

Korak 4) Nakon što se uvjet petlje izvrši i završi, nastavit će se sa sljedećom iteracijom u 4. koraku.

Korak 5) Ako je uvjet petlje lažan, izaći će iz petlje i otići na korak 6.

Korak 6) Kraj petlje.

Tijek izvršenja naredbe Break

Kada se for-petlja počne izvršavati, provjerit će if-uvjet. Ako istinski, naredba break se izvršava i for-petlja će se prekinuti. Ako je uvjet netačan, izvršit će se kôd unutar for-petlje.

Tijek izvršenja naredbe Break

Kada se petlja while izvrši, provjerit će if-uvjet; ako je istina, Izvršava se naredba break i petlja while će se zatvoriti. Ako je uvjet lažan, izvršava se kod unutar petlje while.

Tijek izvršenja naredbe Break

Primjer: naredba Break unutar for-petlje

Popis my_list = ['Siya', 'Tiya', 'Guru', 'Dakš', 'Rija', 'Guru'] se ponavlja pomoću for petlje. Zanima nas traženje imena 'Guru's popisa my_list.'

Unutar for-petlje, if-uvjet uspoređuje svaku stavku s popisa s nazivom 'Guru'. Ako uvjet postane istinit, izvršit će se naredba break i petlja će se prekinuti.'

Radni primjer koji koristi naredbu break je prikazan u nastavku:

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čekivani rezultat:

Siya
Tiya
Guru
Found the name Guru
Loop is Terminated

Primjer: Break naredba unutar while-petlje

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čekivani rezultat:

Siya
Tiya
Guru
Found name Guru
After while-loop exit

Primjer: naredba Break unutar ugniježđenih petlji

U primjeru imamo 2 for-petlje. Obje for-petlje ponavljaju se od raspona od 0 do 3. U drugu for-petlju, dodali smo uvjet gdje-in ako je vrijednost drugog for-petlje indeksa 2, trebala bi se prekinuti.

Dakle, zbog izjave break, druga for-petlja nikada neće ponavljati za 2 i 3.

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

Očekivani rezultat:

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 nastavak izjave

The nastaviti naredba preskače kod koji dolazi nakon nje, a kontrola se vraća na početak za sljedeću iteraciju.

Sintaksa:

continue

Nastavite dijagram toka

Python nastavak izjave

Sljedeći su koraci uključeni u dijagram toka.

Korak 1) Započinje izvođenje petlje.

Korak 2) Izvršit će se izvršenje koda unutar petlje. Ako unutar petlje postoji naredba koja se nastavlja, kontrola će se vratiti na korak 4, tj. početak petlje za sljedeću iteraciju.

Korak 3) Izvršit će se izvršenje koda unutar petlje.

Korak 4) Ako postoji naredba continue ili je izvršenje petlje unutar tijela, pozvat će sljedeću iteraciju.

Korak 5) Nakon završetka izvođenja petlje, petlja će izaći i otići na korak 7.

Korak 6) Ako uvjet petlje u koraku 1 ne uspije, izaći će iz petlje i otići na korak 7.

Korak 7) Kraj petlje.

Nastavi tok izvršenja naredbe

Petlja for prolazi kroz zadani niz my_list. Unutar petlje for izvršava se uvjet if. Ako je uvjet istinski, izvršava se naredba continue, a kontrola će prijeći na početak petlje za sljedeću iteraciju.

Tok koda je kao što je prikazano u nastavku:

Nastavi tok izvršenja naredbe

Kada se petlja while izvrši, provjerit će if-uvjet, ako jest istina, Izvršava se naredba continue. Kontrola će se vratiti na početak while petlje za sljedeću iteraciju. Ako je uvjet netočan, izvršit će se kod unutar while petlje.

Tok koda je kao što je prikazano u nastavku:

Nastavi tok izvršenja naredbe

Primjer: Nastavite unutar for-petlje

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

Očekivani rezultat:

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

Primjer: Nastavite unutar while-petlje

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

Očekivani rezultat:

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

Primjer: Nastavite unutar ugniježđene petlje

Donji primjer pokazuje korištenje 2 for-petlje. Obje for-petlje ponavljaju se od raspona od 0 do 3. U drugoj for-petlji postoji uvjet prema kojem ako je vrijednost drugog indeksa for-petlje 2, treba nastaviti. Dakle, zbog nastaviti naredbu, druga for-petlja će preskočiti iteraciju za 2 i nastaviti za 3.

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

Očekivani rezultat:

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 prolazna izjava

Python naredba pass koristi se kao rezervirano mjesto unutar petlji, funkcija, klase, if-naredbe koja se namjerava implementirati kasnije.

Sintaksa

pass

Što je pass iskaz u Python?

Python pass je nulta izjava. Kada je Python interpreter naiđe na pass naredbu, ne radi ništa i biva ignoriran.

Kada koristiti izjavu o prolaznosti?

Zamislite da imate funkciju ili klasu s praznim tijelom. Planirate napisati kod u budućnosti. The Python tumač će izbaciti pogrešku ako naiđe na prazno tijelo.

Komentar se također može dodati unutar tijela funkcije ili klase, ali tumač ignorira komentar i izbacit će pogrešku.

Prolazna izjava može se koristiti unutar tijela funkcije ili tijela klase. Tijekom izvođenja, tumač, kada naiđe na naredbu prolaza, ignorira i nastavlja bez davanja ikakve pogreške.

Primjer: naredba pass unutar funkcije

U primjeru je prolaz dodan unutar funkcije. Izvršit će se kada se funkcija pozove kao što je prikazano u nastavku:

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

Očekivani rezultat:

pass inside function

Primjer: naredba pass unutar klase

U donjem primjeru stvorili smo samo praznu klasu koja ima naredbu za ispis nakon koje slijedi naredba za prolaz. Prolazna izjava je pokazatelj da će kod unutar klase “My_Class” biti implementiran u budućnosti.

classMy_Class:
print("Inside My_Class")    
pass

Izlaz:

Inside My_Class

Primjer: naredba pass unutar petlje

U donjem primjeru, niz 'Guru' se koristi unutar for-petlje. Uvjet if provjerava znak 'r' i poziva naredbu print nakon koje slijedi pass.

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

Očekivani rezultat:

G
u
Pass executed
r
u

Primjer: proslijedite naredbu unutar if-petlje

U primjeru if petlja provjerava vrijednost a i ako je uvjet istinit, ide i ispisuje izjavu "prolaz izvršen" nakon čega slijedi prolaz.

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

Očekivani rezultat:

pass executed

Kada koristiti naredbu break and continue?

  • A razbiti naredba, kada se koristi unutar petlje, prekinut će petlju i izaći. Ako se koristi unutar ugniježđenih petlji, izaći će iz trenutne petlje.
  • A nastaviti naredba će zaustaviti trenutno izvršenje kada se koristi unutar petlje, a kontrola će se vratiti na početak petlje.

Glavna razlika između naredbe break i continue je u tome što kada se naiđe na ključnu riječ break, ona će izaći iz petlje.

U slučaju ključne riječi continue, trenutna iteracija koja se izvodi bit će zaustavljena i nastavit će sa sljedećom iteracijom.

Pitanja i odgovori

Naredba continue preskače ostatak trenutne iteracije petlje i skače na sljedeću. Naredba pass ne radi ništa - ona je samo rezervirano mjesto koje održava petlju, funkciju ili klasu sintaktički valjanom.

Naredba break izlazi samo iz najunutarnje petlje koja je sadrži, tako da se sve vanjske petlje nastavljaju izvršavati. Da biste odjednom napustili nekoliko petlji, upotrijebite varijablu flag ili premjestite petlje u funkciju i vratite se.

Da. Blok petlje else izvršava se samo kada se petlja normalno završi bez izvršavanja prekida. Koristan je za logiku pretraživanja, kao što je ispis poruke da nije pronađeno nakon provjere svake stavke u nizu.

Python izaziva SyntaxError, jer su naredbe break i continue valjane samo unutar petlje for ili while. Ako vam je potreban rezervirani prostor izvan petlje, umjesto toga koristite naredbu pass, koja je dopuštena svugdje gdje se očekuje naredba.

Nakon što se izvrši naredba break ili continue, kontrola napušta trenutnu iteraciju, pa su naredbe napisane nakon njih u sljedećim retcima nedostupne. U gornjim primjerima, poziv funkcije print() nakon naredbe break nikada se ne izvršava i zapravo je mrtav kod.

Naredba break izlazi iz najbliže zatvorene petlje, ali nastavlja s radom funkcije. Naredba return odmah izlazi iz cijele funkcije, vraćajući vrijednost i istovremeno završavajući svaku petlju unutar te funkcije.

AI asistenti poput ChatGPT-a generiraju kod za upravljanje petljom iz jednostavnog opisa, objašnjavaju zašto petlja završava rano, označavaju pogrešno postavljene naredbe break ili continue i predlažu odgovara li pass, continue ili break vašoj logici.

Da. GitHub Copilot automatski dovršava naredbe break, continue i pass iz komentara ili okolnog koda. Agentic AI alati idu dalje, refaktorirajući tok petlje, uklanjajući mrtvi kod nakon breaka i automatski ispravljajući greške u kontroli toka u cijeloj datoteci.

Sažmite ovu objavu uz: