Python For & While ciklusok: felsorolás, megszakítás, utasítás folytatása
Mi az a Loop?
A hurkok többször is végrehajthatnak egy kódblokkot, amíg egy bizonyos feltétel nem teljesül. Használatuk meglehetősen gyakori a programozásban. Ellentétben más programozási nyelvekkel, amelyek rendelkeznek For Loop, while ciklus, dowhile stb.
Mi az a For Loop?
A For ciklus egy sorozat elemei feletti iterációra szolgál. Gyakran használják, ha van egy kódrészlete, amelyet „n” számú alkalommal szeretne megismételni.
Mi az a While Loop?
Míg a Loop egy kódblokk megismétlésére szolgál. A kódblokk egyszeri futtatása helyett többször végrehajtja a kódblokkot, amíg egy bizonyos feltétel teljesül.
A „While Loop” használata
Míg a ciklus pontosan ugyanazt csinálja, mint az „if utasítás”, de a kódblokk egyszeri futtatása helyett visszaugranak arra a pontra, ahol elkezdte a kódot, és újra megismétli az egész folyamatot.
Szintaxis
while expression Statement
Példa:
# #Example file for working with loops # x=0 #define a while loop while(x <4): print(x) x = x+1
Várható teljesítmény:
0 1 2 3
- 4. kódsor: Az x változó 0-ra van állítva
- 7. kódsor: Míg a ciklus az x<4 feltételt ellenőrzi. Az x aktuális értéke 0. A feltétel igaz. A vezérlés áramlása belép a hurokba
- 8. kódsor: Az x értéke nyomtatásra kerül
- 9. kódsor: x növekszik 1-gyel. A vezérlés folyamata visszamegy a 7. sorba. Most az x értéke 1, ami kisebb, mint 4. A feltétel igaz, és ismét végrehajtódik a while ciklus. Ez addig folytatódik, amíg x 4 nem lesz, és a while feltétel hamis lesz.
A „For Loop” használata
In Python, „for loop”-nak hívják iterátorok.
Csakúgy, mint a while ciklus, a „For Loop” is a program ismétlésére szolgál.
De ellentétben a while ciklussal, amely igaz vagy hamis feltételtől függ. A „For Loop” az iterálandó elemektől függ.
Példa:
# #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)
Várható teljesítmény:
2 3 4 5 6
A For Loop a tartományban deklarált számmal iterál.
Például,
A hurok számára x esetén a tartományban (2,7)
Amikor ez a kód végrehajtódik, a 2 és 7 közötti számot írja ki (2,3,4,5,6). Ebben a kódban a 7-es szám nem szerepel a tartományon belül.
A For Loops számos egyéb dologhoz is használható, nem csak a számokhoz. A következő részben vékonyat fogunk látni.
A For Loop for String használata
Ebben a lépésben látni fogjuk, hogy a „for loops” a számokon kívül más dolgokra is használható.
Példa:
#use a for loop over a collection Months = ["Jan","Feb","Mar","April","May","June"] for m in Months: print(m)
Várható teljesítmény:
Jan Feb Mar April May June
3. kódsor: A hónapokat („január, febr., március, április, május, június”) változó hónapokban tároljuk
4. kódsor: A for ciklust minden egyes érték felett megismételjük hónapokban. A hónapok aktuális értéke az m változóban tárolva
5. kódsor: Nyomtassa ki a hónapot
A szünet utasítások használata a For Loopban
A Breakpoint a For Loop egyedülálló funkciója, amely lehetővé teszi a for ciklus megszakítását vagy leállítását.
Példa:
#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)
Várható teljesítmény:
10 11 12 13 14
Ebben a példában a számokat 10-től 20-ig deklaráltuk, de azt akarjuk, hogy a for ciklusunk a 15-ös számnál végződjön, és leálljon a további végrehajtás. Ehhez deklaráljuk a break függvényt az (x==15): break definiálásával, így amint a kód meghívja a 15-ös számot, leállítja a programot. Code Line 10 deklarálja az x változót (10, 20) között.
- A 11-es kódsor deklarálja a töréspont feltételét x==15-nél,
- A 12-es kódsor ellenőrzi és ismétli a lépéseket, amíg el nem éri a 15-ös számot
- 13. kódsor Nyomtassa ki az eredményt a kimeneten
Hogyan kell használni a „continue” utasítást a For Loopban
A Continue funkció, ahogy a neve is mutatja, leállítja a for ciklus aktuális iterációját, DE folytatja a többi iteráció végrehajtását.
Példa
#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)
Várható teljesítmény:
11 12 13 14 16 17 18 19
A Continue utasítás a for ciklusban használható, ha egy adott értéket szeretne lekérni a listából.
Példánkban 10-20 értéket deklaráltunk, de ezek közé a számok közé csak azokat a számokat akarjuk, amelyek NEM oszthatók 5-tel, vagy más szóval, amelyek 5-tel osztva nem adnak nullát.
Tehát a mi tartományunkban (10,11, 12….19,20) csak 3 olyan szám esik (10,15,20), amelyek oszthatók 5-tel, a többi pedig nem.
Tehát a 10,15, 20 és XNUMX szám kivételével a „for ciklus” nem folytatódik, és kiírja ezeket a számokat kimenetként.
- A 10-es kódsor deklarálja az x változót a (10, 20) tartományhoz
- A 12-es kódsor deklarálja az x 5-tel osztva = 0 feltételét, folytatódik
- A 13-as kódsor nyomtatja ki az eredményt
Mi az enumerate() in Python?
enumerate() PYTHONBAN egy beépített függvény, amellyel az iterálható objektum minden eleméhez indexet rendelhetünk. Egy hurkot ad hozzá az iterálható objektumokhoz, miközben nyomon követi az aktuális elemet, és visszaadja az objektumot felsorolható formában. Ez az objektum for ciklusban használható listává alakításához a list() metódussal.
Példa:
Funkció felsorolása a listában szereplő tagok számozására vagy indexelésére szolgál.
Tegyük fel, hogy számozást szeretnénk végezni a hónapunkra (január, febr., márc, ….június), így deklaráljuk az i változót, amely felsorolja a számokat, míg m a hónap számát írja ki a listában.
#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árható teljesítmény:
0 Jan 1 Feb 2 Mar 3 April 4 May 5 June
A kód végrehajtásakor az enumerate függvény kimenete a hónap nevét adja vissza indexszámmal, mint például (0-január), (1-február), (2-március) stb.
- A 3. kódsor deklarálja a hónapok listáját [ jan., febr.,…jún.]
- A 4. kódsor deklarálja az i és m változót a For Loop számára
- Az 5. kódsor kinyomtatja az eredményt, és ismét beírja a For Loop-ot a hónapok hátralévő részében a felsoroláshoz
Gyakorlati példa
Nézzünk egy másik példát arra, hogy a For Loop ugyanazt az állítást ismételje meg újra és újra.
Python hurok | Munkakód minden gyakorlathoz |
---|---|
A while ciklus kódja |
x=0 while (x<4): print (x) x= x+1 |
For Loop Egyszerű példa |
x=0 for x in range (2,7): print (x) |
A for ciklus használata a karakterláncban |
Months = ["Jan","Feb","Mar","April","May","June"] for m in (Months): print (m) |
Használjon break-utasítást a ciklusban |
for x in range (10,20): if (x == 15): break print (x) |
A Continue utasítás használata for ciklusban |
for x in range (10,20): if (x % 5 == 0): continue print (x) |
A „felsorolási függvény” kódja a „for hurokkal” |
Months = ["Jan","Feb","Mar","April","May","June"] for i, m in enumerate (Months): print (i,m) |
Hogyan használjuk a for ciklust ugyanazon utasítások újra és újra megismétlésére
A for loop használatával akár ugyanazt az utasítást is megismételheti újra és újra. Itt a példában háromszor nyomtattuk ki a „guru99” szót.
Példa: Ugyanazon állítás többszöri megismétléséhez deklaráltuk a számot az i változóban (i 123-ban). Tehát amikor lefuttatja a kódot az alábbiak szerint, akkor kiírja azt az utasítást (guru99), amely sokszorosa a mi változónknak deklarált számnak ( i 123-ban).
for i in '123': print ("guru99",i,)
Várható teljesítmény:
guru99 1 guru99 2 guru99 3
Más programozási nyelvekhez hasonlóan Python szintén hurkot használ, de a különböző hurkok tartománya helyett csak két ciklusra korlátozódik, „While loop” és „for loop”.
- Míg a ciklusok végrehajtása attól függ, hogy a feltételes utasítás igaz vagy hamis.
- A hurkokat iterátoroknak nevezzük, a feltételkészlet alapján iterálja az elemet
- Python A For loop számos egyéb dolog halmazához is használható (meghatározva az elemek gyűjteményét, amelyeken át szeretnénk hurkolni)
- A töréspont a For Loop alkalmazásban a program megszakítására vagy befejezésére szolgál egy adott ponton
- A Continue utasítás továbbra is kinyomtatja az utasítást, és kinyomtatja az eredményt a feltételkészletnek megfelelően
- Az Enumerate függvény a „for ciklusban” visszaadja a gyűjtemény azon tagját, amelyet indexszámmal nézünk
Python 2 Példa
A fenti kódok Python 3 példa, Ha be akarsz futni Python 2 Kérjük, vegye figyelembe a következő kódot.
# 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
output:
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