Vi har dækket de grundlæggende datatyper, avancerede datatyper og betingede udsagn i Python i vores tidligere blogs. I denne blog vil vi dække løkker. Hvis du er ny til Python, så start venligst fra den første blog for at få en bedre forståelse af dette emne.

Løkker i Python – indholdsfortegnelse:

  1. Løkker i Python
  2. For-løkke i Python
  3. For-løkker i liste
  4. Iterere et sæt ved hjælp af for-løkke
  5. Iterere et tuple ved hjælp af for-løkke
  6. Nedlagte løkker i Python
  7. While-løkker i Python

Løkker i Python

Løkker bruges, når der er behov for at udføre en opgave mere end én gang. For eksempel at udskrive tal fra 1 til 100, eller et bedre eksempel ville være at summere alle elementerne i en liste eller et array. Nogle gange er der behov for at skrive mere end 1 løkke eller en løkke inde i en anden løkke. I Python er det meget enkelt at skrive disse løkker, og selv syntaksen er let at forstå. Som vi har set, behøver vi i Python ikke at erklære en variabel først, før vi bruger den. Den grundlæggende løkke starter med for-løkke. Lad os forstå “for” løkken.

For-løkke i Python

I en for-løkke har vi tre ting, der skal nævnes. Den første er den indledende værdi af den variabel, som iterationen skal udføres på, stopbetingelsen og den sidste er, hvor mange skridt du vil øge eller mindske iteratoren.

Lad os se syntaksen for en “for” løkke:

1
2
3
4
5
6
7
# For-løkke
 
for var in range(10):
    print(var)
 
for var in range(0,10,1):
    print(var)

I den ovenstående kodeillustration kan vi se, at for-løkker giver det samme resultat. Syntaksen til sidst, hvor vi angav funktionen range, har tre argumenter, som vi diskuterede i det foregående afsnit. I det ovenstående eksempel har range 0,10,1, hvor 0 er den indledende værdi af iteratoren, 10 er den endelige værdi, men range itererer faktisk til 10-1, som er 9, og 1 er forøgelsen af iteratoren hver gang løkken kører.

Lad os køre det ovenstående program

01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
16
17
18
19
20
21
22
Output:
0
1
2
3
4
5
6
7
8
9
 
0
1
2
3
4
5
6
7
8
9

Som vi kan se fra outputillustrationen, udskriver det tal fra 0 til 9.

For-løkker i liste

I en liste har vi en samling af elementer, og nedenfor er illustrationen af, hvordan man bruger for-løkker til at iterere gennem en liste.

1
2
3
X=[1,2,3,4,5,6]
for i in X:
    print(i)
1
2
3
Output:
Dette vil udskrive alle elementerne i listen.
1,2,3,4,5,6

For at inkludere indekset også, mens der udskrives, er koden illustreret nedenfor.

01
02
03
04
05
06
07
08
09
10
X=[1,2,3,4,5,6]
for i in range(len(X)):
    print(i,X[i])
[/code>
<p>Dette vil udskrive både indeks og værdi i listen.</p>
<p>Der er en nem måde at få indekset og værdien ved hjælp af enumerate-funktionen. Brugen af enumerate-funktionen er illustreret nedenfor.</p>
[code lang="js"]
X=[1,2,3,4,5,6]
for i,value in enumerate(X):
    print(i,value)
1
2
3
4
5
6
7
Output:
0,1
1,2
2,3
3,4
4,5
5,6

Iterere et sæt ved hjælp af for-løkke

At iterere et sæt er ligesom listeiteration ved hjælp af for-løkke. Et eksempel er illustreret nedenfor.

X={1,2,3,4,5,6} for i,value in enumerate(X): print(i,value) [/code> Output: 0,1 1,2 2,3 3,4 4,5 5,6 [/code>

Iterere et tuple ved hjælp af for-løkke

At iterere et tuple er ligesom listeiteration ved hjælp af for-løkke. Et eksempel er illustreret nedenfor.

X=(1,2,3,4,5,6) for i,value in enumerate(X): print(i,value) [/code> Output: 0,1 1,2 2,3 3,4 4,5 5,6 [/code>

Iterere et dictionary ved hjælp af for-løkke

At iterere et dictionary er forskelligt fra de andre datatyper, da dictionary indeholder nøgle-værdi-par. Derfor for at få kun nøglerne bruger vi dictionaryname.keys() og for værdierne bruger vi dictionaryname.values(). Et eksempel er illustreret nedenfor.

X={“1”:1,”2”:2} for key in X.keys(): print(key) for value in X.values(): print(value) for key,value in X.items(): print(key,value) [/code> Output: 1 2 1 2 1,1 2,2 [/code>

Nedlagte løkker i Python

Nedlagte løkker er nyttige, når man bygger en brute force-løsning på et givet problem. De øger tidskompleksiteten af programmet og mindsker læsbarheden.

a = [1, 2] b = [10, 13] # få tal hvis produkt er 13 for i in a: for j in b: if i*j == 13: print(i, j) [/code>

I den ovenstående kodeblok har vi defineret 2 lister, og hver liste har en samling af tal. Hovedformålet var at finde ud af, hvilke tal der giver produktet 13 fra begge lister og også at udskrive disse tal. Til dette formål måtte vi iterere gennem 2 lister, derfor blev der brugt 2 for-løkker.

Alternativ måde:

Der er en funktion i itertools, som kaldes produkt. Dette hjælper med at holde de indlejrede for-løkker, hvis de er til stede i programmet, læsbare. Eksemplet er illustreret nedenfor.

from itertools import product

a = [1, 2]

b = [10, 13]

# få tal hvis produkt er 13

for i, j in product(a, b):

if(i*j == 13): print(i, j) [/code>

While-løkker i Python

Indtil nu har vi kun udskrevet output, men aldrig givet nogen input til vores program. I Python bruges input() til at give input til programmet. Eksemplet er illustreret nedenfor. While-løkken bruges, når du vil udføre et program, hvis betingelsen er opfyldt. Eksempler på while-løkker er illustreret nedenfor.

Udskriver 0-9 ved hjælp af while-løkke:

i = 0

while(i < 10): print(i) i += 1 [/code>

Som du kan se, er syntaksen while efterfulgt af en betingelse, og inde i løkken øger vi iteratoren i henhold til det ønskede tal.

Output: 0 1 2 3 4 5 6 7 8 9 [/code>

I denne blog har vi dækket nogle grundlæggende aspekter af løbende udsagn i python, de videre emner om funktioner vil blive dækket i næste blog. Spørgsmålet, der skal løses, er givet nedenfor.

loops_in_Python

Du vil måske også kunne lide vores JavaScript-kursus fra begynder til avanceret.

Robert Whitney

JavaScript-ekspert og instruktør, der coacher IT-afdelinger. Hans hovedmål er at hæve teamproduktiviteten ved at lære andre, hvordan man effektivt samarbejder, mens man koder.

View all posts →