Python For- och While-loopar (med exempel)
โก Smart sammanfattning
Python Loopar upprepar ett kodblock tills ett visst villkor รคr uppfyllt. For-looparna och while-looparna, tillsammans med break-, continue- och enumerate-satserna, styr hur mรฅnga gรฅnger iterationerna kรถrs, vilket exemplen nedan visar.

Vad รคr Loop?
Slingor kan exekvera ett kodblock ett antal gรฅnger tills ett visst villkor รคr uppfyllt. Deras anvรคndning รคr ganska vanlig i programmering. Till skillnad frรฅn andra programmeringssprรฅk som har For Loop, while loop, dowhile, etc.
Vad รคr For Loop?
For loop anvรคnds fรถr att iterera รถver element i en sekvens. Det anvรคnds ofta nรคr du har en bit kod som du vill upprepa "n" antal gรฅnger.
Vad รคr While Loop?
While Loop anvรคnds fรถr att upprepa ett kodblock. Istรคllet fรถr att kรถra kodblocket en gรฅng, exekverar det kodblocket flera gรฅnger tills ett visst villkor รคr uppfyllt.
Hur man anvรคnder "While Loop"
While loop gรถr exakt samma sak som "if statement" gรถr, men istรคllet fรถr att kรถra kodblocket en gรฅng hoppar de tillbaka till den punkt dรคr den bรถrjade koden och upprepar hela processen igen.
syntax
while expression Statement
Exempelvis:
# #Example file for working with loops # x=0 #define a while loop while(x <4): print(x) x = x+1
Fรถrvรคntad produktion:
0 1 2 3
- Code Rad 4: Variabeln x รคr satt till 0
- Code Rad 7: While-loopen kontrollerar villkoret x<4. Det aktuella vรคrdet pรฅ x รคr 0. Villkoret รคr sant. Kontrollflรถdet gรฅr in i while-loopen.
- Code Rad 8: Vรคrdet pรฅ x skrivs ut
- Code Rad 9: x รถkas med 1. Kontrollflรถdet gรฅr tillbaka till rad 7. Nu รคr vรคrdet pรฅ x 1, vilket รคr mindre รคn 4. Villkoret รคr sant, och while-loopen kรถrs igen. Detta fortsรคtter tills x blir 4, och while-villkoret blir falskt.
Hur man anvรคnder "For Loop"
In Python, "fรถr loopar" kallas iteratorer.
Precis som while loop, anvรคnds "For Loop" ocksรฅ fรถr att repetera programmet.
Men till skillnad frรฅn while loop som beror pรฅ villkoret sant eller falskt. "For Loop" beror pรฅ de element som den mรฅste iterera.
Exempelvis:
# #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)
Fรถrvรคntad produktion:
2 3 4 5 6
Fรถr Loop itererar med nummer som deklareras i intervallet.
Till exempel,
Fรถr Loop fรถr x i intervallet (2,7)
Nรคr denna kod exekveras kommer den att skriva ut numret mellan 2 och 7 (2,3,4,5,6). I den hรคr koden anses nummer 7 inte vara inom intervallet.
For Loops kan ocksรฅ anvรคndas fรถr en uppsรคttning andra saker och inte bara nummer. Vi kommer att se tunn i nรคsta avsnitt.
Hur man anvรคnder For Loop for String
I det hรคr steget kommer vi att se hur "fรถr loopar" รคven kan anvรคndas fรถr andra saker รคn siffror.
Exempelvis:
#use a for loop over a collection Months = ["Jan","Feb","Mar","April","May","June"] for m in Months: print(m)
Fรถrvรคntad produktion:
Jan Feb Mar April May June
Code Rad 3: Vi lagrar mรฅnaderna ("jan, feb, mar, april, maj, juni") i variabla mรฅnader
Code Rad 4: Vi itererar for-loopen รถver varje vรคrde i Months. Det aktuella vรคrdet fรถr Months lagras i variabeln m.
Code Rad 5: Skriv ut mรฅnaden
Hur man anvรคnder break-satser i For Loop
Breakpoint รคr en unik funktion i For Loop som lรฅter dig bryta eller avsluta exekveringen av for-loopen
Exempelvis:
#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)
Fรถrvรคntad produktion:
10 11 12 13 14
I det hรคr exemplet deklarerade vi talen frรฅn 10-20, men vi vill att vรฅr for-loop ska avslutas vid nummer 15 och sluta kรถras vidare. Fรถr det deklarerar vi break-funktionen genom att definiera (x==15): break, sรฅ snart koden anropar nummer 15 avslutas programmet. Code Rad 10 deklarerar variabel x mellan intervallet (10, 20)
- Code Rad 11 deklarerar villkoret fรถr brytpunkten vid x==15,
- Code Rad 12 kontrollerar och upprepar stegen tills den nรฅr nummer 15
- Code Rad 13 Skriv ut resultatet i utdata
Hur man anvรคnder "fortsรคtt uttalande" i For Loop
Fortsรคtt-funktionen, som namnet indikerar, kommer att avsluta den aktuella iterationen av for-loopen MEN kommer att fortsรคtta exekveringen av de รฅterstรฅende iterationerna.
Exempelvis
#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)
Fรถrvรคntad produktion:
11 12 13 14 16 17 18 19
Continue-satsen kan anvรคndas i for loop nรคr du vill hรคmta ett specifikt vรคrde frรฅn listan.
I vรฅrt exempel har vi deklarerat vรคrdet 10-20, men mellan dessa tal vill vi bara ha de tal som INTE รคr delbara med 5 eller med andra ord som inte ger noll nรคr de divideras med 5.
Sรฅ i vรฅrt intervall (10,11, 12โฆ.19,20) faller endast 3 siffror (10,15,20) som รคr delbara med 5 och resten inte.
Sรฅ fรถrutom nummer 10,15 och 20 kommer inte "for loop" att fortsรคtta och skriva ut dessa nummer som utdata.
- Code rad 10 deklarerar variabeln x fรถr intervallet (10, 20)
- Code rad 12 deklarera villkoret fรถr x dividerat med 5=0 fortsรคtt
- Code rad 13 skriv ut resultatet
Vad รคr enumerate() i Python?
enumerate() I PYTHON รคr en inbyggd funktion som anvรคnds fรถr att tilldela ett index till varje element i det itererbara objektet. Den lรคgger till en loop pรฅ de itererbara objekten samtidigt som den hรฅllerping track fรถr det aktuella objektet och returnerar objektet i en upprรคknningsbar form. Detta objekt kan anvรคndas i en for-loop fรถr att konvertera det till en lista med hjรคlp av list()-metoden.
Exempelvis:
Rรคkna upp funktion anvรคnds fรถr att numrera eller indexera medlemmarna i listan.
Anta att vi vill gรถra numrering fรถr vรฅr mรฅnad (jan, feb, Marc, .... juni), sรฅ vi deklarerar variabeln i som rรคknar upp talen medan m kommer att skriva ut antalet mรฅnader i listan.
#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
Fรถrvรคntad produktion:
0 Jan 1 Feb 2 Mar 3 April 4 May 5 June
Nรคr koden exekveras returnerar utmatningen av enumerate-funktionen mรฅnadens namn med ett indexnummer som (0-Jan), (1- Feb), (2- Mars), etc.
- Code Rad 3 anger listan รถver mรฅnader [jan, feb,โฆjuni]
- Code Rad 4 deklarerar variablerna i och m fรถr For Loop
- Code Rad 5 skriver ut resultatet och anger igen For-loopen fรถr resten av mรฅnaderna fรถr att rรคkna upp
Praktiskt exempel
Lรฅt se ett annat exempel fรถr For Loop fรถr att upprepa samma uttalande om och om igen.
| Python slinga | Arbeta Code fรถr alla รถvningar |
|---|---|
| Code fรถr while-slingan |
x=0
while (x<4):
print (x)
x= x+1
|
| Fรถr Loop Enkelt Exempel |
x=0
for x in range (2,7):
print (x)
|
| Anvรคndning av fรถr loop in string |
Months = ["Jan","Feb","Mar","April","May","June"]
for m in (Months):
print (m)
|
| Anvรคnd break-statement i fรถr loop |
for x in range (10,20):
if (x == 15): break
print (x)
|
| Anvรคndning av Continue-satsen i fรถr loop |
for x in range (10,20):
if (x % 5 == 0): continue
print (x)
|
| Code fรถr "upprรคkna funktion" med "for-loop" |
Months = ["Jan","Feb","Mar","April","May","June"]
for i, m in enumerate (Months):
print (i,m)
|
Hur man anvรคnder fรถr loop fรถr att upprepa samma uttalande om och om igen
Du kan anvรคnda for loop fรถr att till och med upprepa samma uttalande om och om igen. Hรคr i exemplet har vi skrivit ut ordet "guru99" tre gรฅnger.
Exempel: Fรถr att upprepa samma pรฅstรฅende antal gรฅnger har vi deklarerat talet i variabel i (i i 123). Sรฅ nรคr du kรถr koden som visas nedan, skrivs det ut pรฅstรฅendet (guru99) som mรฅnga gรฅnger numret som deklareras fรถr vรฅr variabel i ( i i 123).
for i in '123':
print ("guru99",i,)
Fรถrvรคntad produktion:
guru99 1 guru99 2 guru99 3
Liksom andra programmeringssprรฅk, Python anvรคnder ocksรฅ en loop men istรคllet fรถr att anvรคnda en rad olika loopar รคr den begrรคnsad till endast tvรฅ loopar "While loop" och "for loop".
- While-loopar exekveras baserat pรฅ om det villkorliga uttalandet รคr sant eller falskt.
- Fรถr loopar kallas iteratorer, det itererar elementet baserat pรฅ villkorsuppsรคttningen
- Python For loops kan ocksรฅ anvรคndas fรถr en uppsรคttning olika andra saker (specificerar samlingen av element vi vill loopa รถver)
- Brytpunkt anvรคnds i For Loop fรถr att bryta eller avsluta programmet vid en viss punkt
- Fortsรคtt uttalandet fortsรคtter att skriva ut uttalandet och skriver ut resultatet enligt villkoren
- Enumerate-funktionen i "fรถr loop" returnerar medlemmen av samlingen som vi tittar pรฅ med indexnumret
Python 2 Exempel
Ovanstรฅende koder รคr Python 3 exempel, om du vill springa in Python 2 รถvervรคg fรถljande kod.
# 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
Produktion:
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
