Python For- og While-løkker (med eksempler)

⚡ Smart oppsummering

Python Løkker gjentar en kodeblokk inntil en viss betingelse er oppfylt. for-løkken og while-løkken, sammen med break-, continue- og enumerate-setningene, styrer hvor mange ganger iterasjoner kjøres, slik eksemplene nedenfor viser.

  • 🔁 Looper: En løkke kjører en kodeblokk gjentatte ganger inntil betingelsen stopper den.
  • 🔢 For loop: For-løkken itererer over en sekvens, for eksempel et område, en liste eller en streng.
  • ♻️ Mens loop: While-løkken gjentar seg så lenge betingelsen forblir sann.
  • Gå i stykker: `break`-setningen avslutter en løkke umiddelbart på et valgt punkt.
  • ⏭️ Fortsette: continue-setningen hopper over gjeldende iterasjon og går videre til den neste.
  • 🔖 Opplist: Funksjonen enumerate() kobler hvert element med en indeks mens looping.

Python For- og While-løkker

Hva er Loop?

Loops kan utføre en blokk med kode antall ganger til en viss betingelse er oppfylt. Bruken deres er ganske vanlig i programmering. I motsetning til andre programmeringsspråk som har For Loop, while loop, dowhile, etc.

Hva er For Loop?

For loop brukes til å iterere over elementer i en sekvens. Det brukes ofte når du har et kodestykke som du vil gjenta "n" antall ganger.

Hva er While Loop?

Mens Loop brukes til å gjenta en kodeblokk. I stedet for å kjøre kodeblokken én gang, kjører den kodeblokken flere ganger til en viss betingelse er oppfylt.

Slik bruker du "While Loop"

Mens loop gjør akkurat det samme som "if statement" gjør, men i stedet for å kjøre kodeblokken én gang, hopper de tilbake til punktet der den startet koden og gjentar hele prosessen igjen.

syntax

while expression
 Statement

Eksempel:

#
#Example file for working with loops
#
x=0
#define a while loop
while(x <4):
		print(x)
		x = x+1

Forventet utgang:

0
1
2
3
  • Code Linje 4: Variabel x settes til 0
  • Code Linje 7: While-løkken sjekker for betingelse x < 4. Gjeldende verdi av x er 0. Betingelsen er sann. Kontrollflyten går inn i while-løkken.
  • Code Linje 8: Verdien av x skrives ut
  • Code Linje 9: x økes med 1. Kontrollflyten går tilbake til linje 7. Nå er verdien av x 1, som er mindre enn 4. Betingelsen er sann, og while-løkken kjøres igjen. Dette fortsetter til x blir 4, og while-betingelsen blir usann.

Slik bruker du "For Loop"

In Python, "for loops" kalles iteratorer.

Akkurat som while loop, brukes "For Loop" også til å gjenta programmet.

Men i motsetning til while loop som avhenger av tilstanden sant eller usant. "For Loop" avhenger av elementene den må iterere.

Eksempel:

#
#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)

Forventet utgang:

2
3
4
5
6

For Loop itererer med nummer deklarert i området.

For eksempel,

For Loop for x i området (2,7)

Når denne koden er utført, vil den skrive ut tallet mellom 2 og 7 (2,3,4,5,6). I denne koden regnes ikke nummer 7 innenfor området.

For Loops kan også brukes til et sett med andre ting og ikke bare nummer. Vi vil se tynn i neste avsnitt.

Hvordan bruke For Loop for String

I dette trinnet vil vi se hvordan "for loops" også kan brukes til andre ting i tillegg til tall.

Eksempel:

#use a for loop over a collection
Months = ["Jan","Feb","Mar","April","May","June"]
for m in Months:
		print(m)

Forventet utgang:

Jan
Feb
Mar
April
May
June

Code Linje 3: Vi lagrer månedene («jan, feb, mar, april, mai, juni») i variable måneder

Code Linje 4: Vi itererer for-løkken over hver verdi i Months. Gjeldende verdi av Months lagres i variabel m.

Code Linje 5: Skriv ut måneden

Hvordan bruke break-utsagn i For Loop

Breakpoint er en unik funksjon i For Loop som lar deg bryte eller avslutte utførelsen av for-løkken

Eksempel:

#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)

Forventet utgang:

10
11
12
13
14

I dette eksemplet deklarerte vi tallene fra 10–20, men vi ønsker at for-løkken vår skal avsluttes ved tallet 15 og stoppe videre kjøring. For å gjøre dette deklarerer vi break-funksjonen ved å definere (x==15): break, slik at så snart koden kaller tallet 15, avslutter den programmet. Code Linje 10 deklarerer variabel x mellom området (10, 20)

  • Code Linje 11 deklarerer betingelsen for bruddpunkt ved x==15,
  • Code Linje 12 sjekker og gjentar trinnene til den når nummer 15
  • Code Linje 13 Skriv ut resultatet i utdata

Hvordan bruke "fortsett uttalelse" i For Loop

Fortsett-funksjonen, som navnet indikerer, vil avslutte gjeldende iterasjon av for-løkken MEN vil fortsette utføringen av de gjenværende iterasjonene.

Eksempel

#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)

Forventet utgang:

11
12
13
14
16
17
18
19

Continue-setningen kan brukes i for loop når du ønsker å hente en bestemt verdi fra listen.

I vårt eksempel har vi deklarert verdi 10-20, men mellom disse tallene vil vi bare ha de tallene som IKKE er delbare med 5 eller med andre ord som ikke gir null når de divideres med 5.

Så i vårt område (10,11, 12….19,20) faller bare 3 tall (10,15,20) som er delbare med 5 og resten ikke.

Så bortsett fra nummer 10,15 og 20 vil ikke "for loop" fortsette og skrive ut disse nummerene som utdata.

  • Code linje 10 deklarerer variabelen x for området (10, 20)
  • Code linje 12 deklarer betingelsen for x delt på 5 = 0 fortsett
  • Code linje 13 skriver ut resultatet

Hva er enumerate() i Python?

enumerate() I PYTHON er en innebygd funksjon som brukes til å tilordne en indeks til hvert element i det itererbare objektet. Den legger til en løkke på de itererbare objektene mens den holderping track for gjeldende element og returnerer objektet i en opplistbar form. Dette objektet kan brukes i en for-løkke for å konvertere det til en liste ved å bruke list()-metoden.

Eksempel:

Oppregne funksjon brukes til å nummerere eller indeksere medlemmene i listen.

Anta at vi ønsker å nummerere måneden vår (januar, feb, marc, .... juni), så vi erklærer variabelen i som teller tallene mens m vil skrive ut antall måneder i listen.

#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

Forventet utgang:

0 Jan
1 Feb
2 Mar
3 April
4 May
5 June

Når koden utføres, returnerer utdataene fra enumerate-funksjonen månedsnavnet med et indeksnummer som (0-Jan), (1- Feb), (2- Mars), etc.

  • Code Linje 3 deklarerer listen over måneder [jan, feb,…jun]
  • Code Linje 4 deklarerer variablene i og m for For Loop
  • Code Linje 5 vil skrive ut resultatet og igjen skrive inn For-løkken for resten av månedene for å telle opp

Praktisk eksempel

La oss se et annet eksempel for For Loop for å gjenta det samme utsagnet om og om igjen.

Python sløyfe Arbeide Code for alle øvelser
Code for while-løkken
x=0    
while (x<4):
    print (x)
    x= x+1
For Loop Enkelt eksempel
x=0 
for x in range (2,7):
    print (x)
Bruk av for loop in string
Months = ["Jan","Feb","Mar","April","May","June"]
for m in (Months):
    print (m)
Bruk break-statement i for loop
for x in range (10,20):
       if (x == 15): break
       print (x)
Bruk av Continue-setningen i for loop
for x in range (10,20):
       if (x % 5 == 0): continue
       print (x)
Code for «opplistingsfunksjon» med «for-løkke»
Months = ["Jan","Feb","Mar","April","May","June"]
for i, m in enumerate (Months):
    print (i,m)

Hvordan bruke for loop for å gjenta den samme setningen om og om igjen

Du kan bruke for loop for til og med å gjenta den samme setningen om og om igjen. Her i eksemplet har vi skrevet ut ordet "guru99" tre ganger.

Eksempel: For å gjenta samme utsagn antall ganger, har vi erklært tallet i variabel i (i i 123). Så når du kjører koden som vist nedenfor, skriver den ut setningen (guru99) som mange ganger tallet som er deklarert for vår variabel i ( i i 123).

for i in '123':
 print ("guru99",i,)

Forventet utgang:

guru99 1
guru99 2
guru99 3

Som andre programmeringsspråk, Python bruker også en løkke, men i stedet for å bruke en rekke forskjellige løkker er den begrenset til bare to løkker "While loop" og "for loop".

  • Mens løkker utføres basert på om den betingede setningen er sann eller usann.
  • For løkker kalles iteratorer, det itererer elementet basert på betingelsessettet
  • Python For loops kan også brukes til et sett med forskjellige andre ting (spesifiserer samlingen av elementer vi ønsker å gå over)
  • Breakpoint brukes i For Loop for å bryte eller avslutte programmet på et bestemt punkt
  • Fortsett uttalelse vil fortsette å skrive ut uttalelsen, og skriver ut resultatet i henhold til betingelsessettet
  • Enumerate-funksjonen i "for loop" returnerer medlemmet av samlingen som vi ser på med indeksnummeret

Python 2 Eksempel

Kodene ovenfor er Python 3 eksempler, hvis du vil løpe inn Python 2 vurder følgende kode.

# 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

Utgang:

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

Spørsmål og svar

En for-løkke itererer over en kjent sekvens, for eksempel en liste eller et område, mens en while-løkke fortsetter å kjøre til betingelsen blir usann. Brukes for når du kjenner elementene, og while for åpen repetisjon.

`break`-setningen avslutter hele løkken umiddelbart, mens `continue` bare hopper over den nåværende iterasjonen og går videre til den neste. `Break` stopper løkken helt, mens `continue` holder den i gang.

Pass-setningen er en null-plassholder som ikke gjør noe. Den brukes der Python Syntaksen trenger en setning, men ingen handling er nødvendig, for eksempel en tom løkkekropp eller en stub du planlegger å fullføre senere.

Ja. En else-blokk i en løkke kjører bare når løkken avsluttes normalt uten å treffe et brudd. Det er nyttig for søkelogikk, for eksempel å skrive ut en ikke funnet-melding etter å ha skannet hvert element i en sekvens.

Bruk while True: for å gjenta for alltid, og deretter avslutte med en break-setning når en betingelse er oppfylt. Python har ingen innebygd do-while-løkke, så mens True med break er den vanlige måten å emulere en på.

En break-setning avslutter bare den innerste løkken som inneholder den, slik at de ytre løkkene fortsetter å kjøre. For å avslutte hver løkke samtidig, bruk en flaggvariabel eller flytt løkkene inn i en funksjon og returner.

Ja. AI-assistenter genererer for- og while-løkker fra en enkel beskrivelse, forklarer feil, oppdager uendelige løkker og feil som følger av hverandre, og foreslår renere alternativer som listeforståelser eller enumerate() for indeksering.

Ja. GitHub Copilot fullfører automatisk for- og while-løkker, bryter, fortsetter og oppregner fra en kommentar eller nærliggende kode. Agentic AI-verktøy går lenger, refaktorerer løkker eller fikser feil i en hel fil automatisk.

Oppsummer dette innlegget med: