Python For ja While tsüklid (näidetega)

⚡ Nutikas kokkuvõte

Python Tsüklid kordavad koodiplokki, kuni teatud tingimus on täidetud. For- ja while-tsükkel koos lausetega break, continue ja enumerate kontrollivad iteratsioonide arvu, nagu allolevad näited näitavad.

  • 🔁 Silmused: Tsükkel käivitab koodiplokki korduvalt, kuni selle tingimus selle peatab.
  • 🔢 Loopi jaoks: For-tsükkel itereerib üle järjestuse, näiteks vahemiku, loendi või stringi.
  • ♻️ Silmuse ajal: While tsükkel kordub seni, kuni selle tingimus jääb tõeseks.
  • Vaheaeg: Katkestuslause väljub tsüklist koheselt valitud punktis.
  • ⏭️ Jätka: Jätkamislause jätab praeguse iteratsiooni vahele ja liigub järgmise juurde.
  • 🔖 Loetle: Funktsioon enumerate() seob iga elemendi indeksiga, samal ajal kui see loetakse.ping.

Python For ja While tsüklid

Mis on Loop?

Silmused võivad käivitada koodiplokki mitu korda, kuni teatud tingimus on täidetud. Nende kasutamine on programmeerimises üsna tavaline. Erinevalt teistest programmeerimiskeeltest, millel on For Loop, while loop, dowhile jne.

Mis on For Loop?

For silmust kasutatakse jada elementide itereerimiseks. Seda kasutatakse sageli siis, kui teil on koodijupp, mida soovite korrata "n" arv kordi.

Mis on While Loop?

Kuigi Loopi kasutatakse koodiploki kordamiseks. Koodiploki ühe korra käivitamise asemel käivitab see koodiploki mitu korda, kuni teatud tingimus on täidetud.

Kuidas kasutada funktsiooni "While Loop"

Kuigi silmus teeb täpselt sama asja, mida teeb „if-lause”, kuid koodiploki ühekordse käivitamise asemel hüppavad nad tagasi punkti, kust see koodi alustas, ja kordab kogu protsessi uuesti.

Süntaks

while expression
 Statement

Näide:

#
#Example file for working with loops
#
x=0
#define a while loop
while(x <4):
		print(x)
		x = x+1

Eeldatav väljund:

0
1
2
3
  • Code Rida 4: Muutuja x väärtuseks seatakse 0
  • Code Rida 7: While'i tsükkel kontrollib tingimust x<4. x praegune väärtus on 0. Tingimus on tõene. Juhtimisvoog siseneb while'i tsüklisse.
  • Code Rida 8: x väärtus trükitakse
  • Code Rida 9: x-i suurendatakse 1 võrra. Juhtimisvoog läheb tagasi reale 7. Nüüd on x väärtus 1, mis on väiksem kui 4. Tingimus on tõene ja uuesti käivitatakse while-tsükkel. See jätkub, kuni x saab 4 ja while-tingimus muutub vääraks.

Kuidas kasutada "For Loopi"

In Python, nimetatakse "silmusteks". iteraatorid.

Nii nagu while loop, kasutatakse ka "For Loop" programmi kordamiseks.

Kuid erinevalt while-tsüklist, mis sõltub tingimusest tõene või väär. "For Loop" sõltub elementidest, mida see peab kordama.

Näide:

#
#Example file for working with loops
#
x=0
#define a while loop
#	while(x <4):
#		print x
#		x = x+1

#Define a for loop 
for x in range(2,7):
		print(x)

Eeldatav väljund:

2
3
4
5
6

For Loop itereerib vahemikus deklareeritud arvuga.

Näiteks

Loopi jaoks x jaoks vahemikus (2,7)

Kui see kood käivitatakse, prindib see numbri vahemikus 2 kuni 7 (2,3,4,5,6). Selles koodis ei arvestata numbrit 7 vahemikus.

For Loopsi saab kasutada ka muude asjade jaoks, mitte ainult numbrite jaoks. Näeme õhukest järgmises osas.

Kuidas kasutada For Loopi stringi jaoks

Selles etapis näeme, kuidas "silmustele" saab peale numbrite kasutada ka muid asju.

Näide:

#use a for loop over a collection
Months = ["Jan","Feb","Mar","April","May","June"]
for m in Months:
		print(m)

Eeldatav väljund:

Jan
Feb
Mar
April
May
June

Code Rida 3: Salvestame kuud („jaanuar, veebruar, märts, aprill, mai, juuni“) muutujasse „kuud“

Code Rida 4: Käime for-tsüklit läbi iga Kuude väärtuse. Kuude praegune väärtus salvestatakse muutujasse m.

Code Rida 5: Kuu väljatrükk

Katkestuslausete kasutamine For Loopis

Katkestuspunkt on For Loopi ainulaadne funktsioon, mis võimaldab sul katkestada või lõpetada for-tsükli täitmine

Näide:

#use a for loop over a collection
	#Months = ["Jan","Feb","Mar","April","May","June"]
	#for m in Months:
		#print m
		
# use the break and continue statements
for x in range (10,20):
			if (x == 15): break
			#if (x % 2 == 0) : continue
			print(x)

Eeldatav väljund:

10
11
12
13
14

Selles näites deklareerisime arvud 10-20, aga me tahame, et meie for-tsükkel lõppeks arvul 15 ja lõpetaks edasise täitmise. Selleks deklareerime funktsiooni break, defineerides (x==15): break, seega niipea kui kood kutsub arvu 15, lõpetab see programmi töö. Code Rida 10 deklareerib muutuja x vahemikus (10, 20)

  • Code Rida 11 deklareerib tingimuse katkestuspunkti jaoks punktis x==15,
  • Code Rida 12 kontrollib ja kordab samme, kuni jõutakse numbrini 15.
  • Code Rida 13 Näitab tulemust väljundis

Kuidas kasutada For Loopis lauset "jätka".

Funktsioon Continue, nagu nimigi ütleb, lõpetab for-tsükli praeguse iteratsiooni, KUID jätkab ülejäänud iteratsioonide täitmist.

Näide

#use a for loop over a collection
	#Months = ["Jan","Feb","Mar","April","May","June"]
	#for m in Months:
		#print m
		
# use the break and continue statements
for x in range (10,20):
			#if (x == 15): break
			if (x % 5 == 0) : continue
			print(x)

Eeldatav väljund:

11
12
13
14
16
17
18
19

Lauset Continue saab kasutada for-tsüklis, kui soovite loendist konkreetse väärtuse hankida.

Meie näites oleme deklareerinud väärtuse 10-20, kuid nende arvude vahele tahame ainult neid arve, mis EI jagu 5-ga või teisisõnu, mis ei anna 5-ga jagamisel nulli.

Niisiis, meie vahemikus (10,11, 12….19,20) langeb ainult 3 arvu (10,15,20), mis jaguvad 5-ga ja ülejäänud mitte.

Seega, välja arvatud numbrid 10,15, 20 ja XNUMX, "for loop" ei jätku ja prindib need numbrid välja väljundina.

  • Code rida 10 deklareerib muutuja x vahemiku (10, 20) jaoks
  • Code rida 12 deklareeri tingimus, et x jagatud 5-ga = 0, jätka
  • Code rida 13 prindi tulemus

Mis on enumerate() in Python?

enumerate() PYTHONIS on sisseehitatud funktsioon, mida kasutatakse itereeritava objekti igale elemendile indeksi määramiseks. See lisab itereeritavatele objektidele tsükli, samal ajal kuiping track praeguse elemendi väärtusest ja tagastab objekti loendaval kujul. Seda objekti saab kasutada for-tsüklis selle loendiks teisendamiseks, kasutades list() meetodit.

Näide:

Funktsiooni loetlemine kasutatakse loendis olevate liikmete nummerdamiseks või indekseerimiseks.

Oletame, et tahame nummerdada oma kuu (jaanuar, veebr, märts, ….juuni), seega deklareerime muutuja i, mis loetleb numbreid, samal ajal kui m trükib loendisse kuu numbri.

#use a for loop over a collection
Months = ["Jan","Feb","Mar","April","May","June"]
for i, m in enumerate (Months):
		print(i,m)
		
# use the break and continue statements
		
		#for x in range (10,20):
		#if (x == 15): break
		#if (x % 5 == 0) : continue
		#print x

Eeldatav väljund:

0 Jan
1 Feb
2 Mar
3 April
4 May
5 June

Kui kood on käivitatud, tagastab loendusfunktsiooni väljund kuu nime koos indeksinumbriga, näiteks (0-jaanuar), (1- veebruar), (2- märts) jne.

  • Code 3. real on kuude loend [ jaan, veebr,…juuni]
  • Code 4. rida deklareerib For-tsükli jaoks muutujad i ja m
  • Code Rida 5 prindib tulemuse ja sisestab uuesti For-tsükli ülejäänud kuude loendamiseks

Praktiline näide

Vaatame veel ühte näidet, kuidas For Loop kordab sama väidet ikka ja jälle.

Python silmus Töö Code kõigi harjutuste jaoks
Code for while tsükkel
x=0    
while (x<4):
    print (x)
    x= x+1
Loopi jaoks lihtne näide
x=0 
for x in range (2,7):
    print (x)
For silmuse kasutamine stringis
Months = ["Jan","Feb","Mar","April","May","June"]
for m in (Months):
    print (m)
Kasutage katkestuslauset in for loop
for x in range (10,20):
       if (x == 15): break
       print (x)
Lause Continue kasutamine tsüklis
for x in range (10,20):
       if (x % 5 == 0): continue
       print (x)
Code „loendusfunktsiooni“ jaoks koos „for-tsükliga“
Months = ["Jan","Feb","Mar","April","May","June"]
for i, m in enumerate (Months):
    print (i,m)

Kuidas kasutada silmust sama avalduse ikka ja jälle kordamiseks

Saate kasutada silmust sama avalduse ikka ja jälle kordamiseks. Siin näites oleme kolm korda välja printinud sõna “guru99”.

Näide: Sama väite kordamiseks mitu korda oleme deklareerinud arvu muutujas i (i 123-s). Nii et kui käivitate koodi allpool näidatud viisil, prindib see avalduse (guru99), mis on mitu korda suurem kui meie muutuja jaoks deklareeritud arv ( i 123-s).

for i in '123':
 print ("guru99",i,)

Eeldatav väljund:

guru99 1
guru99 2
guru99 3

Nagu teisedki programmeerimiskeeled, Python kasutab ka tsüklit, kuid erinevate tsüklite vahemiku asemel on see piiratud ainult kahe tsükliga "While loop" ja "for loop".

  • Kuigi silmuseid täidetakse selle alusel, kas tingimuslause on tõene või väär.
  • Silmuseid nimetatakse iteraatoriteks, see itereerib elementi tingimuste komplekti alusel
  • Python For loops saab kasutada ka mitmesuguste muude asjade komplekti jaoks (määrates elementide kogumi, mille üle tsüklit teha tahame)
  • Katkestuspunkti kasutatakse For Loopis programmi katkestamiseks või lõpetamiseks mis tahes konkreetses punktis
  • Jätka avaldus jätkab avalduse printimist ja prindib tulemuse vastavalt tingimuskomplektile
  • Funktsioon Loenda tsüklis “for loop” tagastab kogu liikme, mida me indeksinumbriga vaatame

Python 2 Näide

Ülaltoodud koodid on Python 3 näidet, kui soovite sisse joosta Python 2 palun kaaluge järgmist koodi.

# How to use "While Loop"
#Example file for working with loops
#

x=0
#define a while loop
while(x <4):
		print x
		x = x+1

#How to use "For Loop"
#Example file for working with loops
#

x=0
#define a while loop
#	while(x <4):
#		print x
#		x = x+1

#Define a for loop 
for x in range(2,7):
		print x

#How to use For Loop for String
#use a for loop over a collection
	Months = ["Jan","Feb","Mar","April","May","June"]
	for m in Months:
		print m
		

#How to use break statements in For Loop
	#use a for loop over a collection
	#Months = ["Jan","Feb","Mar","April","May","June"]
	#for m in Months:
		#print m
		
# use the break and continue statements
		for x in range (10,20):
			if (x == 15): break
			#if (x % 2 == 0) : continue
			print x

#How to use "continue statement" in For Loop
	#use a for loop over a collection
	#Months = ["Jan","Feb","Mar","April","May","June"]
	#for m in Months:
		#print m
		
# use the break and continue statements		
		for x in range (10,20):
			#if (x == 15): break
			if (x % 5 == 0) : continue
			print x

#How to use "enumerate" function for "For Loop"
	#use a for loop over a collection
	Months = ["Jan","Feb","Mar","April","May","June"]
	for i, m in enumerate (Months):
		print i,m
		
# use the break and continue statements
		#for x in range (10,20):
		#if (x == 15): break
		#if (x % 5 == 0) : continue
		#print x

Väljund:

0
1
2
3

2
3
4
5
6

Jan
Feb
Mar
April
May
June

10
11
12
13
14

11
12
13
14
16
17
18
19

0 Jan
1 Feb
2 Mar
3 April
4 May
5 June

KKK

For-tsükkel itereerib teadaoleva jada, näiteks loendi või vahemiku, üle, samas kui while-tsükkel jätkab töötamist seni, kuni selle tingimus muutub vääraks. Kasutage tsüklit siis, kui teate elemente, ja while'i avatud korduste korral.

Lause break väljub kogu tsüklist koheselt, samas kui `continue` jätab vahele ainult praeguse iteratsiooni ja liigub järgmise juurde. `Break` peatab tsükli täielikult, samas kui `continue` hoiab seda töös.

Pass-lause on tühikohatäide, mis ei tee midagi. Seda kasutatakse seal, kus Python Süntaks vajab lauset, kuid toimingut pole vaja, näiteks tühja tsükli sisu või tüve, mille plaanite hiljem lõpule viia.

Jah. Tsükli else plokk käivitub ainult siis, kui tsükkel lõpeb normaalselt ilma pausi tegemata. See on mugav otsinguloogika jaoks, näiteks pärast iga järjestuse elemendi skannimist teate "not found" printimiseks.

Kasuta while True: igaveseks kordamiseks ja seejärel välju break-lausega, kui tingimus on täidetud. Python `While`-il puudub sisseehitatud do-while tsükkel, seega on while True koos `break`-iga levinud viis selle emuleerimiseks.

Katkestuslause väljub ainult sisemisest tsüklist, mis seda sisaldab, seega välimised tsüklid jätkavad töötamist. Kõigist tsüklitest korraga lahkumiseks kasutage lipumuutujat või liigutage tsüklid funktsiooni ja tagastage.

Jah. Tehisintellekti assistendid genereerivad lihtsa kirjelduse põhjal for ja while tsükleid, selgitavad vigu, tuvastavad lõpmatuid tsükleid ja ebaühtlaseid vigu ning pakuvad välja selgemaid valikuid, näiteks loendi mõistmist või indekseerimiseks enumerate().

Jah. GitHub Copilot täiendab automaatselt tsüklite eel- ja lõpp-punkte, katkestab, jätkab ja loetleb kommentaarist või lähedalasuvast koodist. Agentsed tehisintellekti tööriistad lähevad veelgi kaugemale, refaktoreerides tsükleid või parandades vigu kogu failis automaatselt.

Võta see postitus kokku järgmiselt: