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
