logo

Iterer over en ordbok i Python

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.