Python For & While tsüklid: loetlege, katkestage, jätkake lauset

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
  • Koodirida 4: muutuja x väärtuseks on seatud 0
  • Koodirida 7: Kuigi tsükkel kontrollib tingimust x<4. Praegune x väärtus on 0. Tingimus on tõene. Juhtimise voog siseneb silmuse ajal
  • Koodirida 8: prinditakse x väärtus
  • Koodirida 9: x-i suurendatakse 1 võrra. Juhtimise voog läheb tagasi reale 7. Nüüd on x väärtus 1, mis on väiksem kui 4. Tingimus on tõene ja jälle käivitatakse while-tsükkel. See jätkub, kuni x muutub 4-ks 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

Koodirida 3: salvestame kuud (jaan, veebr, märts, aprill, mai, juuni) muutuvate kuude kujul

Koodirida 4: kordame for-tsüklit iga väärtuse kohta kuudes. Kuude praegune väärtus on salvestatud muutujasse m

Koodirida 5: printige kuu

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 vahemikus 10–20, kuid tahame, et meie for-tsükkel lõppeks numbriga 15 ja lõpetaks edasise täitmise. Selleks deklareerime katkestusfunktsiooni, defineerides (x==15): break, niipea kui kood kutsub numbrit 15, lõpetab see programmi Koodirida 10 deklareerib muutuja x vahemikus (10, 20)

  • Koodirida 11 deklareerib katkestuspunkti tingimuse x==15,
  • Koodirida 12 kontrollib ja kordab samme, kuni jõuab numbrini 15
  • Koodirida 13 Trüki tulemus 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.

  • Koodirida 10 deklareerib vahemiku (10, 20) muutuja x
  • Koodirida 12 deklareerib tingimuse x jagatud 5-ga = 0 jätka
  • Koodirida 13 prindib tulemuse

Mis on enumerate() in Python?

enumerate() PYTHONIS on sisseehitatud funktsioon, mida kasutatakse itereeritava objekti igale üksusele indeksi määramiseks. See lisab itereeritavatele objektidele silmuse, jälgides samal ajal praegust üksust, ja tagastab objekti loendaval kujul. Seda objekti saab kasutada for-tsüklis, et teisendada see loendiks, kasutades meetodit list().

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.

  • Koodirida 3 deklareerib kuude loendi [ jaanuar, veebr, … juuni]
  • Koodirida 4 deklareerib For Loopi muutujad i ja m
  • Koodirida 5 prindib tulemuse ja sisestab loetlemiseks uuesti For Loop ülejäänud kuude jaoks

Praktiline näide

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

Python silmus Kõigi harjutuste töökood
While tsükli kood
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)
Kood funktsioonile "loendamisfunktsioon" koos "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

Võta see postitus kokku järgmiselt: