Hvis du har brugt arrays på andre programmeringssprog, kan du finde noget lignende i form af lister i Python. Den eneste forskel er, at Python-lister har en ekstra fordel - dynamisk størrelse. Ligesom arrays kan du bruge dem til at gemme mere end en vare.

Hvorfor kræves der looping?

Mens du arbejder med lister, vil der være tidspunkter, hvor du bliver nødt til at udføre den samme handling mod hver post på listen.

For eksempel vil du måske tage gennemsnittet af alle poster på en liste. På en lignende note, hvad nu hvis du har gemt blogs på en liste og gerne vil hente deres overskrift?

Alle disse scenarier har det samme problem: de involverer gentagelse. For at imødegå disse bekymringer kan du blot bruge sløjfer med lister i Python.

Lad os se, hvordan sløjfer gør det let at udføre operationer mod flere emner på en liste med et eksempel.

Forståelse af sløjfer med lister gennem et eksempel

Antag at du vil udskrive en liste over årets amerikanske svømmere fra 2016 til 2019 (ingen blev tildelt i 2020 på grund af COVID-19). Uden sløjfer skal du hente hvert navn et efter et fra listen. Der er dog to store problemer med denne metode:

instagram viewer

  1. Udskrivning af hvert navn er gentagne og tidskrævende, når du arbejder med en lang liste.
  2. Ændring af koden for hver forekomst kræver betydelig indsats.

Relaterede: Sådan bruges en While Loop i Python

Heldigvis kan en for loop løse begge disse problemer effektivt. Overvej følgende kode:


svømmere = ['hjælper', 'dressel', 'kalisz', 'dressel']
til svømmer i svømmere:
print (svømmer)

Lad os dissekere denne kode i tre trin:

  1. Du definerer en liste svømmere og gem navnene på vinderne i den.
  2. Du definerer en for loop, træk et navn fra listen svømmere en efter en og tildel den til variablen svømmer.
  3. Du beder Python om at udskrive et navn, der er tildelt svømmer i den specifikke iteration.

Nu fortsætter Python med at gentage 2nd og 3rd trin til at udskrive alle svømmere på din liste. For din bekvemmelighed kan du læse det således: "For hver svømmer på min liste over svømmere skal du vise svømmerens navn." Her er output:

En kort blik på sløjfer

Emnet looping er afgørende, fordi det er en af ​​de centrale tilgange til automatisering af gentagne opgaver. For eksempel i vores swimmers.py fil, Python behandler sløjfens første linje:


til svømmer i svømmere:

Her fortæller du Python at hente den første værdi fra din liste, svømmere. Dernæst tildeler den den til din definerede variabel svømmer. Da den første værdi er 'phelps', gælder følgende udsagn for den:


print (svømmer)

Det er vigtigt at forstå, at Python udskriver den nyeste værdi af svømmer på dette tidspunkt, hvilket tilfældigvis er 'phelps'. Da listen består af flere værdier, går Python tilbage til den første linje i sløjfen:


til svømmer i svømmere:

Denne gang henter Python det næste navn fra din liste, 'dressel' og tildeler det til variablen svømmer. Igen vil Python udføre følgende stykke kode:


print (svømmer)

Nu udskriver Python den nyeste værdi af svømmer, som tilfældigvis er 'dressel'. Tilsvarende vil Python gentage sløjfen og udskrive 'kalisz' og 'dressel'.

Efter udskrivning af den sidste værdi går Python til den første linje i sløjfen igen, og da der ikke er nogen yderligere indtastning, flytter den til den næste linje. I dette program er der intet efter for-sløjfen, så det slutter.

Når du fortsætter med at løbe igennem lister, skal du huske, at uanset hvilket trin du definerer i din kode, vil det blive gentaget en gang for hver listeindgang, uanset listen længde. Det betyder, at selvom du tilføjer en milliard poster til din liste, vil Python udføre din definerede handling en milliard gange.

En anden ting at bemærke er, at når du definerer din for sløjfer, kan du vælge ethvert navn til den midlertidige variabel, der er tildelt hver post på listen. Men det anbefales at vælge et navn, der passer til din kontekst for bedre kodelæsbarhed.

For eksempel er her en effektiv tilgang til at gennemgå en liste over produkter, fugle og skuespillere:


for produkt i produkter:
til fugl hos fugle:
for skuespiller i skuespillere:

Nu hvor du har en grundlæggende forståelse af for loop, manipulerer du hvert element på din liste. Når vi går tilbage til svømmereksemplet, kan du give komplimenter til hver svømmer for deres færdigheder ved at skrive følgende kode:


svømmere = ['phelps', 'dressel', 'kalisz', 'dressel']
til svømmer i svømmere:
print (f "{swimmer.title ()}, dine svømningsevner er fantastiske!")

Denne kode fungerer nøjagtigt som den før; den eneste forskel er, at du opretter en besked til hver svømmer ved at kalde deres navne ud. Som før kører løkken igen hver svømmer og udskriver en erklæring for hver af dem. Som forventet vises det genererede output nedenfor:

Du kan også skrive flere udsagn i for-sløjfen. Husk, at sløjfen omfatter hver indrykket linje, der kommer efter svømmer i svømmere, og Python udfører hver linje en gang for hver listeværdi. Derfor er der uendelige muligheder for alle poster på listen.

For eksempel kan du skrive en anden udskrift i ovenstående eksempel.


svømmere = ['phelps', 'dressel', 'kalisz', 'dressel']
til svømmer i svømmere:
print (f "{swimmer.title ()}, dine svømningsevner er fantastiske!")
print (f "Ser frem til at se dig i den næste konkurrence, {swimmer.title ()}.
")

Da du har brugt indrykning til begge udsagn, udfører Python hver af dem for hver post på listen.

Efter at have afsluttet loop kan du sammenfatte din output og derefter flytte til andre dele af dit program. Denne post-loop-del skal ikke være indrykket, så den gentages ikke.

Nu kan du nemt gennemgå lister

I denne artikel lærte du, hvorfor der er behov for sløjfer, hvordan man bruger sløjfer med lister, og hvordan Python behandler poster på en liste, når den er indrykket i en sløjfe. Du kan nu bruge lister og sløjfer til at skrive mere kompleks kode og oprette programmer af højere kvalitet.

For at teste din viden er her en simpel øvelse: Opret en liste med 10 numre og udskriv kun numre, der kan deles med fem.

E-mail
Sådan tilføjes en liste i Python

Arbejder du med lister i Python? Her er hvad du har brug for at vide om brug af Python append-funktionen, når du arbejder med lister.

Læs Næste

Relaterede emner
  • Programmering
  • Python
Om forfatteren
Usman Ghani (2 artikler offentliggjort)Mere fra Usman Ghani

Abonner på vores nyhedsbrev

Deltag i vores nyhedsbrev for tekniske tip, anmeldelser, gratis e-bøger og eksklusive tilbud!

Et trin mere !!!

Bekræft din e-mail-adresse i den e-mail, vi lige har sendt dig.

.