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