Python For & While Silmukat: Luettelo, Katkaise, Jatka lausetta
Mikä on Loop?
Silmukat voivat suorittaa koodilohkon useita kertoja, kunnes tietty ehto täyttyy. Niiden käyttö on melko yleistä ohjelmoinnissa. Toisin kuin muut ohjelmointikielet, joissa on For Loop, while loop, dowhile jne.
Mikä For Loop on?
For-silmukkaa käytetään iteroitaessa sekvenssin elementtejä. Sitä käytetään usein, kun sinulla on koodinpätkä, jonka haluat toistaa "n" määrän.
Mikä on While Loop?
Vaikka silmukkaa käytetään koodilohkon toistamiseen. Sen sijaan, että koodilohko suoritetaan kerran, se suorittaa koodilohkon useita kertoja, kunnes tietty ehto täyttyy.
Kuinka käyttää "While Loop" -toimintoa
Vaikka silmukka tekee täsmälleen saman asian kuin "if-lause", mutta sen sijaan, että suorittaisit koodilohkon kerran, ne hyppäävät takaisin kohtaan, jossa se aloitti koodin, ja toistaa koko prosessin uudelleen.
Syntaksi
while expression Statement
esimerkki:
# #Example file for working with loops # x=0 #define a while loop while(x <4): print(x) x = x+1
Odotettu tuotos:
0 1 2 3
- Koodirivi 4: Muuttuja x on asetettu arvoon 0
- Koodirivi 7: Vaikka silmukka tarkistaa ehdon x<4. Nykyinen x:n arvo on 0. Ehto on tosi. Ohjausvirta siirtyy silmukan aikana
- Koodirivi 8: x:n arvo tulostetaan
- Koodirivi 9: x kasvatetaan yhdellä. Ohjauksen kulku palaa riville 1. Nyt x:n arvo on 7, joka on pienempi kuin 1. Ehto on tosi, ja jälleen while-silmukka suoritetaan. Tämä jatkuu, kunnes x:stä tulee 4, ja while-ehdosta tulee epätosi.
Kuinka käyttää For Loopia
In Python, "silmukoille" kutsutaan iteraattorit.
Aivan kuten while-silmukka, myös "For Loop" -ohjelmaa käytetään ohjelman toistamiseen.
Mutta toisin kuin while-silmukka, joka riippuu ehdosta tosi tai epätosi. "For Loop" riippuu elementeistä, joita sen on iteroitava.
esimerkki:
# #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)
Odotettu tuotos:
2 3 4 5 6
For Loop iteroituu numerolla, joka on ilmoitettu alueella.
Esimerkiksi
Loopille x alueella (2,7)
Kun tämä koodi suoritetaan, se tulostaa numeron väliltä 2 ja 7 (2,3,4,5,6). Tässä koodissa numeroa 7 ei pidetä alueen sisällä.
For Loopsia voidaan käyttää myös muihin asioihin, ei vain numeroihin. Näemme ohuen seuraavassa jaksossa.
For Loop for Stringin käyttäminen
Tässä vaiheessa näemme kuinka "silmukoille" voidaan käyttää myös muihin asioihin kuin numeroihin.
esimerkki:
#use a for loop over a collection Months = ["Jan","Feb","Mar","April","May","June"] for m in Months: print(m)
Odotettu tuotos:
Jan Feb Mar April May June
Koodirivi 3: Tallennamme kuukaudet ("tammi, helmi, maalis, huhtikuu, touko, kesäkuu") muuttuviin kuukausiin
Koodirivi 4: Toistamme for-silmukan jokaisen arvon yli kuukausina. Kuukausien nykyinen arvo tallennettuna muuttujaan m
Koodirivi 5: Tulosta kuukausi
Break-lauseiden käyttäminen For Loopissa
Breakpoint on ainutlaatuinen toiminto For Loopissa, jonka avulla voit katkaista tai lopettaa for-silmukan suorituksen
esimerkki:
#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)
Odotettu tuotos:
10 11 12 13 14
Tässä esimerkissä ilmoitimme luvut 10-20, mutta haluamme, että for-silmukamme päättyy numeroon 15 ja lopettaa suorittamisen. Tätä varten ilmoitamme break-funktion määrittämällä (x==15): break, joten heti kun koodi kutsuu numeroa 15, se lopettaa ohjelman Code Line 10 deklaroi muuttujan x välillä (10, 20)
- Koodirivi 11 ilmoittaa keskeytyskohdan ehdon kohdassa x==15,
- Koodirivi 12 tarkistaa ja toistaa vaiheet, kunnes se saavuttaa numeron 15
- Koodirivi 13 Tulosta tulos tulosteeseen
"Continue-lauseen" käyttäminen For Loopissa
Jatka-toiminto, kuten nimi osoittaa, lopettaa for-silmukan nykyisen iteraation, MUTTA jatkaa jäljellä olevien iteraatioiden suorittamista.
esimerkki
#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)
Odotettu tuotos:
11 12 13 14 16 17 18 19
Continue-käskyä voidaan käyttää for-silmukassa, kun haluat hakea tietyn arvon luettelosta.
Esimerkissämme olemme ilmoittaneet arvon 10-20, mutta näiden lukujen väliin haluamme vain ne luvut, jotka EIVÄT ole jaollisia viidellä tai toisin sanoen jotka eivät anna nollaa 5:llä jaettuna.
Joten alueellamme (10,11, 12….19,20) kuuluu vain 3 numeroa (10,15,20), jotka ovat jaollisia viidellä ja loput eivät.
Joten lukuun ottamatta numeroita 10,15, 20 ja XNUMX, "for-silmukka" ei jatka ja tulostaa nämä numerot ulostulona.
- Koodirivi 10 ilmoittaa muuttujan x alueella (10, 20)
- Koodirivi 12 ilmoittaa ehdon x:lle jaettuna 5:llä=0 jatkuu
- Koodirivi 13 tulostaa tuloksen
Mikä on enumerate() in Python?
enumerate() PYTHONISSA on sisäänrakennettu toiminto, jota käytetään määrittämään indeksi kullekin iteroitavan kohteen kohteelle. Se lisää silmukan iteroitaviin objekteihin pitäen samalla kirjaa nykyisestä kohteesta ja palauttaa objektin numeroitavassa muodossa. Tätä objektia voidaan käyttää for-silmukassa sen muuntamiseen listaksi käyttämällä list()-menetelmää.
esimerkki:
Luettelotoiminto käytetään luettelon jäsenten numerointiin tai indeksointiin.
Oletetaan, että haluamme numeroida kuukautemme ( tammi, helmikuu, mars, …. kesäkuu), joten ilmoitamme muuttujan i, joka luettelee luvut, kun taas m tulostaa kuukauden numeron luettelossa.
#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
Odotettu tuotos:
0 Jan 1 Feb 2 Mar 3 April 4 May 5 June
Kun koodi suoritetaan, enumerate-funktion tulos palauttaa kuukauden nimen indeksinumerolla, kuten (0-tammikuu), (1-helmikuu), (2- maaliskuu) jne.
- Koodirivi 3 ilmoittaa kuukausiluettelon [ tammi, helmi,… kesäkuu]
- Koodirivi 4 ilmoittaa For Loopin muuttujat i ja m
- Koodirivi 5 tulostaa tuloksen ja syöttää uudelleen For Loopin loput kuukaudet luetellaksesi
Käytännön esimerkki
Katsotaanpa toinen esimerkki For Loopilta, joka toistaa saman lausunnon yhä uudelleen ja uudelleen.
Python silmukka | Toimintakoodi kaikille harjoituksille |
---|---|
Koodi while-silmukalle |
x=0 while (x<4): print (x) x= x+1 |
For Loop yksinkertainen esimerkki |
x=0 for x in range (2,7): print (x) |
For-silmukan käyttö merkkijonossa |
Months = ["Jan","Feb","Mar","April","May","June"] for m in (Months): print (m) |
Käytä break-lausetta in for loop |
for x in range (10,20): if (x == 15): break print (x) |
Continue-lauseen käyttö for-silmukassa |
for x in range (10,20): if (x % 5 == 0): continue print (x) |
Koodi "enumerate function" ja "for loop" |
Months = ["Jan","Feb","Mar","April","May","June"] for i, m in enumerate (Months): print (i,m) |
Kuinka käyttää for loop -toimintoa saman lauseen toistamiseen yhä uudelleen ja uudelleen
Voit käyttää for loop -toimintoa jopa toistaaksesi saman lauseen yhä uudelleen. Tässä esimerkissä olemme tulostaneet sanan "guru99" kolme kertaa.
Esimerkki: Toistaaksemme saman lauseen monta kertaa, olemme ilmoittaneet luvun muuttujassa i (i kohdassa 123). Joten kun suoritat koodin alla esitetyllä tavalla, se tulostaa lausunnon (guru99), joka on monta kertaa muuttujalle ilmoitettu luku (i:ssä 123).
for i in '123': print ("guru99",i,)
Odotettu tuotos:
guru99 1 guru99 2 guru99 3
Kuten muutkin ohjelmointikielet, Python käyttää myös silmukkaa, mutta sen sijaan, että käyttäisi erilaisia silmukoita, se on rajoitettu vain kahteen silmukkaan "While loop" ja "for loop".
- Vaikka silmukat suoritetaan sen perusteella, onko ehdollinen lause tosi vai epätosi.
- Silmukoita kutsutaan iteraattoreiksi, se iteroi elementin ehtojoukon perusteella
- Python For loops -ohjelmaa voidaan käyttää myös useiden muiden asioiden joukkoon (määrittää elementtien kokoelman, jonka yli haluat silmukan)
- Katkopistettä käytetään For Loopissa ohjelman katkaisemiseen tai lopettamiseen missä tahansa tietyssä kohdassa
- Continue-lause jatkaa lausunnon tulostamista ja tulostaa tuloksen ehtojoukon mukaisesti
- Enumerate-funktio "for-silmukassa" palauttaa kokoelman jäsenen, jota tarkastelemme indeksinumerolla
Python 2-esimerkki
Yllä olevat koodit ovat Python 3 esimerkkiä, jos haluat ajaa sisään Python 2 harkitse seuraavaa koodia.
# 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
lähtö:
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