I denne artikkelen vil vi dekke Hvordan iterere gjennom en ordbok i Python. Ordbok i Python er en samling av dataverdier som brukes til å lagre dataverdier som et kart, i motsetning til andre datatyper som bare har en enkelt verdi som et element, har Dictionary nøkkelen: verdipar i Python .
For å iterere gjennom verdier i en ordbok kan du bruke innebygde metoder som values(), items() eller til og med iterere direkte over ordboken for å få tilgang til verdier med nøkler.
Python-ordbøker
Ordbøker i Python er svært nyttige datastrukturer. Ordbøker lagrer elementer i nøkkelverdi-par.
Ordboknøkler er hashbare, noe som betyr at verdiene deres ikke endres i løpet av livet. Det kan ikke være dupliserte nøkler i en ordbok.
For å få tilgang til verdien som er lagret i en Python-ordbok du må bruke nøkler.
Hvordan iterere gjennom en ordbok i Python
Iterasjon gjennom en ordbok betyr å besøke hvert nøkkelverdi-par i rekkefølge. Det betyr å få tilgang til en Python-ordbok og krysse hver nøkkelverdi som finnes i ordboken. Å gjenta en ordbok er en svært viktig oppgave hvis du vil bruke en ordbok riktig.
Det er flere måter å iterere gjennom en ordbok, vi diskuterer noen generelt brukte metoder for ordbokiterering i Python som er følgende:
- Iterer Python-ordboken ved å bruke build.keys()
- Iterer gjennom alle verdier ved å bruke .values()
- Gå gjennom Python Dictionary ved å bruke for loop
- Iterer nøkkelverdi-par ved å bruke elementer()
- Tilgangsnøkkel Ved å bruke map() og dict.get
- Tilgangsnøkkel i Python ved hjelp av zip()
- Tilgangsnøkkel ved å bruke Utpakking av Dict
Merk: I Python versjon 3.6 og tidligere var ordbøker uordnet. Men siden Python versjon 3.7 og senere, er ordbøker bestilt.
Itererende ordbok i Python ved hjelp av .values()-metoden
Å iterere gjennom alle verdiene i en ordbok i Python ved å bruke .values() , kan du bruke en for-løkke, og få tilgang til hver verdi sekvensielt. Denne metoden lar deg behandle eller vise hver enkelt verdi i ordboken uten eksplisitt å referere til de tilsvarende nøklene.
Eksempel: I dette eksemplet bruker vi metoden values() for å skrive ut alle verdiene som finnes i ordboken.
Python3
# create a python dictionary> statesAndCapitals>=> {> >'Gujarat'>:>'Gandhinagar'>,> >'Maharashtra'>:>'Mumbai'>,> >'Rajasthan'>:>'Jaipur'>,> >'Bihar'>:>'Patna'> }> print>(>'List Of given capitals:
'>)> for> capital>in> statesAndCapitals.values():> >print>(capital)> |
>
>
Produksjon:
List Of given capitals: Gandhinagar Mumbai Jaipur Patna>
Få tilgang til ordboknøkler i Python ved å bruke build .keys()
I Python kan du få tilgang til nøklene til en ordbok ved å bruke den innebygde ` .keys() ` metode. Den returnerer et visningsobjekt som viser en liste over alle nøklene i ordboken. Denne visningen kan brukes direkte eller konverteres til en liste for videre manipulering.
Eksempel : I dette eksemplet henter koden nedenfor alle nøkler fra `statesAndCapitals`-ordboken ved å bruke `.keys()` og skriver ut det resulterende visningsobjektet.
Python3
statesAndCapitals>=> {> >'Gujarat'>:>'Gandhinagar'>,> >'Maharashtra'>:>'Mumbai'>,> >'Rajasthan'>:>'Jaipur'>,> >'Bihar'>:>'Patna'> }> keys>=> statesAndCapitals.keys()> print>(keys)> |
>
hadoop opplæring
>
Produksjon:
dict_keys(['Gujarat', 'Maharashtra', 'Rajasthan', 'Bihar'])>
Sløyfe gjennom Python Dictionary med for loop
For å få tilgang til nøkler i en ordbok uten å bruke `keys()`-metoden, kan du iterere direkte over ordboken ved å bruke en for løkke , som `for taste in my_dict:`. Denne sløyfen går automatisk over tastene, slik at du får tilgang til hver tast direkte uten behov for et eksplisitt metodekall.
Eksempel: I dette eksemplet itererer vi over ordbøker ved å bruke 'for'-løkker for å iterere nøklene våre og skrive ut alle nøklene som finnes i ordboken.
Python3
statesAndCapitals>=> {> >'Gujarat'>:>'Gandhinagar'>,> >'Maharashtra'>:>'Mumbai'>,> >'Rajasthan'>:>'Jaipur'>,> >'Bihar'>:>'Patna'> }> print>(>'List Of given states:
'>)> # Iterating over keys> for> state>in> statesAndCapitals:> >print>(state)> |
>
>
Produksjon:
List Of given states: Gujarat Maharashtra Rajasthan Bihar>
Iterer gjennom en ordbok ved å bruke items()-metoden
Du kan bruke den innebygde items()-metoden for å få tilgang til både nøkler og elementer samtidig. items()-metoden returnerer visningsobjektet som inneholder nøkkelverdi-paret som tupler.
Python3
statesAndCapitals>=> {> >'Gujarat'>:>'Gandhinagar'>,> >'Maharashtra'>:>'Mumbai'>,> >'Rajasthan'>:>'Jaipur'>,> >'Bihar'>:>'Patna'> }> for> key, value>in> statesAndCapitals.items():> >print>(f>'{key}: {value}'>)> |
>
>
Produksjon:
Gujarat: Gandhinagar Maharashtra: Mumbai Rajasthan: Jaipur Bihar: Patna>
Iterating Python Dictionary Bruke map() og dict.get
Metoden får tilgang til nøkler i en ordbok ved hjelp av `kart()` og `dict.get() `. Den bruker 'dict.get'-funksjonen på hver tast, og returnerer et kartobjekt med tilsvarende verdier. Dette tillater direkte iterasjon over ordboknøklene, og oppnår effektivt verdiene deres på en kortfattet måte.
Eksempel: I dette eksemplet bruker koden nedenfor 'map()'-funksjonen for å lage en iterabel av verdier oppnådd ved å bruke 'get'-metoden på hver nøkkel i 'statesAndCapitals'-ordboken. Den itererer deretter gjennom denne iterable ved å bruke en 'for'-løkke og skriver ut hver tast.
Python3
statesAndCapitals>=> {> >'Gujarat'>:>'Gandhinagar'>,> >'Maharashtra'>:>'Mumbai'>,> >'Rajasthan'>:>'Jaipur'>,> >'Bihar'>:>'Patna'> }> map_keys>=> map>(statesAndCapitals.get, statesAndCapitals)> for> key>in> map_keys:> >print>(key)> |
>
10 av 1 million
>
Utgang:
Gandhinagar Mumbai Jaipur Patna>
Iterer Python Dictionary ved å bruke zip()-funksjonen
Ved hjelp av `zip()` i Python kan du få tilgang til nøklene til en ordbok ved å iterere over en tuppel av ordbokens nøkler og verdier samtidig. Denne metoden skaper par med nøkler og verdier, og tillater kortfattet iterasjon over begge elementene.
Eksempel: I dette eksemplet parer zip()-funksjonen hver tilstand med dens tilsvarende kapital, og løkken itererer over disse parene for å skrive ut informasjonen
Python3
statesAndCapitals>=> {> >'Gujarat'>:>'Gandhinagar'>,> >'Maharashtra'>:>'Mumbai'>,> >'Rajasthan'>:>'Jaipur'>,> >'Bihar'>:>'Patna'> }> for> state, capital>in> zip>(statesAndCapitals.keys(), statesAndCapitals.values()):> >print>(f>'The capital of {state} is {capital}'>)> |
>
>
Utgang:
The capital of Gujarat is Gandhinagar The capital of Maharashtra is Mumbai The capital of Rajasthan is Jaipur The capital of Bihar is Patna>
Ordbok iterasjon i Python ved å pakke ut ordboken
For å få tilgang til nøkler ved å bruke utpakking av en ordbok, kan du bruke stjerne (*)-operatøren for å pakke ut nøklene i en liste eller en annen gjentakelig.
Eksempel : I dette eksemplet vil du se at vi bruker * for å pakke ut ordboken. *dict-metoden hjelper oss å pakke ut alle nøklene i ordboken.
Python3
statesAndCapitals>=> {> >'Gujarat'>:>'Gandhinagar'>,> >'Maharashtra'>:>'Mumbai'>,> >'Rajasthan'>:>'Jaipur'>,> >'Bihar'>:>'Patna'> }> keys>=> [>*>statesAndCapitals]> values>=> '{Gujarat}-{Maharashtra}-{Rajasthan}-{Bihar}'>.>format>(>*>statesAndCapitals,>*>*>statesAndCapitals)> print>(keys)> print>(values)> |
>
>
Produksjon:
['Gujarat', 'Maharashtra', 'Rajasthan', 'Bihar'] Gandhinagar-Mumbai-Jaipur-Patna>
Å iterere gjennom ordboken er en viktig oppgave hvis du vil ha tilgang til nøklene og verdiene til ordboken. I denne opplæringen har vi nevnt flere måter å iterere gjennom alle elementer i en ordbok. Viktige metoder som verdier(), items() og nøkler() er nevnt sammen med andre teknikker.
- Iterer gjennom en liste over ordbøker i Python
- Iterer gjennom verdilisteordbok
- Hvordan iterere over nestet ordbok
- Slett elementer fra ordboken mens du itererer