brug af ordbogen struktur med for loops er utrolig effektiv i python. I dette kort, Jeg vil vise dig nogle eksempler på måder at bruge ordbøger i for loops.
det første eksempel, jeg skal dække, er at udvide en ordbog til en liste over lister. Lad os forestille os, at du har en ordbog, hvor nøglen er produktet, og værdien er nummeret på produktet på lager., Nedenfor er et eksempel på, hvordan jeg ønsker at ændre mine data struktur:
- Input:
fruits = {'banana':3,'apple':2, 'mango':1, 'kiwi':5}
- Output:
fruits_list = , , , ]
At opnå dette, vi kan starte med at skrive de skridt til en løsning.
Vi er nødt til at gentage alle frugter nøgler og opbygge en liste gentage nøglen N=value
gange.
Jeg vil gøre dette ved hjælp af listeforståelse.,
- for At gentage hele dict punkter, du behøver
fruits.items()
- for At opbygge en liste gentage hver tast N gange gøre:
*N
- Som dict værdier, der angiver hvor mange gange at gentage, at gøre:
*value
jeg kan skrive dette som en for-løkke og derefter konvertere det til listen forståelse, hvilket jeg mener er mere intuitiv. Nedenfor er koden som en for loop:
nu kunne vi gøre det samme med en listeforståelse. Listeforståelse er handlingen med at sætte en for-løkke på en liste., Dette kan virke lidt underligt, men skaberne af python indså, at det var almindeligt nok at bruge en for-loop til at oprette en liste, som det var vigtigt at oprette en genvej.
Listeforståelse er hård i starten, fordi det føles unaturligt, men jo mere du koder i python, jo mere finder du de ekstra fordele ved at bruge listeforståelse. Bare husk: alt hvad du gør med listeforståelse kan gøres med en for loop. Men det omvendte er ikke sandt.,
Syntaks af Listen Forståelse
variable =
Du kan også tilføje en betinget erklæring i en liste forståelse:
variable =
Så hvordan gælder dette til ovenstående problem? Nå, nedenfor viser jeg, hvordan vi kan bruge dette nye format til at hjælpe os!
Vi vil undersøge mere listeforståelse i fremtiden, så bare sørg for at forstå, hvordan vi bruger dictionary.items()
metode
Skriv et svar