Ordbøker i Python

Ordbøker i Python

En Python-ordbok er en datastruktur som lagrer verdien i nøkkel:verdi-par.

Eksempel:

Som du kan se fra eksempelet, lagres data i nøkkel:verdi-par i ordbøker, noe som gjør det lettere å finne verdier .

Produksjon:

{1: 'Geeks', 2: 'For', 3: 'Geeks'} 

Python Dictionary Syntaks

dikt_var = {nøkkel1: verdi1, nøkkel2: verdi2, …..}

Hva er en ordbok i Python?

Ordbøker i Python er en datastruktur som brukes til å lagre verdier i nøkkel:verdi-format. Dette gjør det forskjellig fra lister, tuples og arrays, ettersom hver nøkkel i en ordbok har en tilknyttet verdi.

Merk: Fra og med Python versjon 3.7 er ordbøker bestilt og kan ikke inneholde dupliserte nøkler.

Hvordan lage en ordbok

I Python , kan en ordbok opprettes ved å plassere en sekvens av elementer i curly {} klammeparenteser, atskilt med et 'komma'.

Ordboken inneholder verdipar, den ene er nøkkelen og det andre tilsvarende parelementet er dens Nøkkel:verdi .

Verdier i en ordbok kan være av hvilken som helst datatype og kan dupliseres, mens nøkler ikke kan gjentas og må uforanderlig .

Merk - Ordboknøkler skiller mellom store og små bokstaver, samme navn, men forskjellige tilfeller av nøkkel vil bli behandlet distinkt.

Koden demonstrerer å lage ordbøker med forskjellige typer nøkler. Den første ordboken bruker heltallsnøkler, og den andre ordboken bruker en blanding av streng- og heltallsnøkler med tilsvarende verdier. Dette viser fleksibiliteten til Python-ordbøker når det gjelder håndtering av ulike datatyper som nøkler.

Produksjon

Dictionary with the use of Integer Keys:  {1: 'Geeks', 2: 'For', 3: 'Geeks'} Dictionary with the use of Mixed Keys:  {'Name': 'Geeks', 1: [1, 2, 3, 4]} 

Ordbok eksempel

En ordbok kan også lages av den innebygde funksjonen dict(). En tom ordbok kan opprettes ved å bare plassere krøllete klammeparenteser{}.

Ulike måter å lage en Python-ordbok på

Koden viser forskjellige måter å lage ordbøker på i Python. Den oppretter først en tom ordbok, og viser deretter hvordan du lager ordbøker ved hjelp av dikt() konstruktør med nøkkel-verdi-par spesifisert innenfor krøllete klammeparenteser og som en liste over tupler.

Produksjon:

Empty Dictionary:  {} Dictionary with the use of dict():  {1: 'Geeks', 2: 'For', 3: 'Geeks'} Dictionary with each item as a pair:  {1: 'Geeks', 2: 'For'} 

Kompleksiteter for å lage en ordbok:

  • Tidskompleksitet: O(len(dikt))
  • Plass kompleksitet: På)

Nestede ordbøker

Eksempel : Koden definerer en nestet ordbok med navn 'Dict' med flere nivåer av nøkkelverdi-par. Den inkluderer en ordbok på toppnivå med tast 1, 2 og 3. Verdien knyttet til nøkkel 3 er en annen ordbok med nøklene 'A', 'B' og 'C.' Dette viser hvordan Python-ordbøker kan nestes for å lage hierarkiske datastrukturer.

Produksjon:

{1: 'Geeks', 2: 'For', 3: {'A': 'Welcome', 'B': 'To', 'C': 'Geeks'}} 

Mer på Python Nested Dictionary

Legge til elementer i en ordbok

Tilsetning av elementer kan gjøres på flere måter. Én verdi om gangen kan legges til en ordbok ved å definere verdi sammen med nøkkelen, f.eks. Dict[Key] = 'Verdi'.

Oppdatering av en eksisterende verdi i en ordbok kan gjøres ved å bruke den innebygde Oppdater() metode. Nestede nøkkelverdier kan også legges til en eksisterende ordbok.

Merk- Mens du legger til en verdi, hvis nøkkelverdien allerede eksisterer, blir verdien oppdatert, ellers legges en ny nøkkel med verdien til i ordboken.

Eksempel: Legg til elementer i en Python-ordbok med forskjellige datatyper

Koden starter med en tom ordbok og legger deretter til nøkkelverdi-par til den. Den demonstrerer å legge til elementer med ulike datatyper, oppdatere en nøkkels verdi og til og med legge inn ordbøker i hovedordboken. Koden viser hvordan du manipulerer ordbøker i Python.

Produksjon:

Empty Dictionary:  {} Dictionary after adding 3 elements:  {0: 'Geeks', 2: 'For', 3: 1} Dictionary after adding 3 elements:  {0: 'Geeks', 2: 'For', 3: 1, 'Value_set': (2, 3, 4)} Updated key value:  {0: 'Geeks', 2: 'Welcome', 3: 1, 'Value_set': (2, 3, 4)} Adding a Nested Key:  {0: 'Geeks', 2: 'Welcome', 3: 1, 'Value_set': (2, 3, 4), 5:  {'Nested': {'1': 'Life', '2': 'Geeks'}}} 

Kompleksiteter for å legge til elementer i en ordbok:

  • Tidskompleksitet: O(1)/O(n)
  • Plass kompleksitet: O(1)

Tilgang til elementer i en ordbok

For å få tilgang til elementene i en ordbok, referer til nøkkelnavnet. Nøkkel kan brukes innenfor firkantede parenteser.

Få tilgang til en verdi i Python Dictionary

Koden viser hvordan du får tilgang til elementer i en ordbok ved hjelp av nøkler. Den får tilgang til og skriver ut verdiene knyttet til nøklene 'navn' og 1, og viser at nøkler kan være av forskjellige datatyper (streng og heltall).

Produksjon:

Accessing a element using key: For Accessing a element using key: Geeks 

Det finnes også en metode som heter få() som også vil hjelpe med å få tilgang til elementet fra en ordbok. Denne metoden godtar nøkkel som argument og returnerer verdien.

Kompleksiteter for å få tilgang til elementer i en ordbok:

  • Tidskompleksitet: O(1)
  • Plass kompleksitet: O(1)

Eksempel: Få tilgang til en verdi i ordboken ved å bruke get() i Python

Koden demonstrerer tilgang til et ordbokelement ved å bruke få() metode. Den henter og skriver ut verdien knyttet til nøkkel 3 i ordboken 'Dict' . Denne metoden gir en sikker måte å få tilgang til ordbokverdier på, og unngår KeyError hvis nøkkelen ikke eksisterer.

Produksjon:

Accessing a element using get: Geeks 

Få tilgang til et element i en nestet ordbok

For å få tilgang til verdien til en nøkkel i den nestede ordboken, bruk syntaks for indeksering [].

Eksempel : Koden fungerer med nestede ordbøker. Den får først tilgang til og skriver ut hele den nestede ordboken knyttet til nøkkelen «Dict1» . Deretter får den tilgang til og skriver ut en bestemt verdi ved å navigere gjennom de nestede ordbøkene. Til slutt henter og skriver den ut verdien knyttet til nøkkelen 'Navn' i den nestede ordboken under «Dict2» .

Produksjon:

{1: 'Geeks'} Geeks For 

Sletting av elementer ved hjelp av 'del' nøkkelord

Elementene i ordboken kan slettes ved å bruke del nøkkelordet som gitt nedenfor.

Eksempel : Koden definerer en ordbok, skriver ut det opprinnelige innholdet og bruker deretter 'av' setning for å slette elementet som er knyttet til nøkkel 1. Etter sletting skriver den ut den oppdaterte ordboken, som viser at det angitte elementet er fjernet.

Produksjon

  Dictionary ={1: 'Geeks', 'name': 'For', 3: 'Geeks'} Data after deletion Dictionary={'name': 'For', 3: 'Geeks'} 

Ordbokmetoder

Her er en liste over innebygde ordbokfunksjoner med beskrivelse. Du kan bruke disse funksjonene til å bruke en ordbok.

Metode Beskrivelse
dict.clear() Fjern alle elementene fra ordboken
dict.copy() Returnerer en kopi av ordboken
dict.get(nøkkel, standard = Ingen) Returnerer verdien til spesifisert nøkkel
dict.items() Returnerer en liste som inneholder en tuppel for hvert nøkkelverdipar
dict.keys() Returnerer en liste som inneholder ordbokens nøkler
dikt.oppdatering(dikt2) Oppdaterer ordboken med spesifiserte nøkkelverdi-par
dict.values() Returnerer en liste over alle verdiene i ordboken
pop() Fjern elementet med spesifisert nøkkel
popItem() Fjerner det siste innsatte nøkkelverdi-paret
dict.setdefault(key,default= Ingen) sett nøkkelen til standardverdien hvis nøkkelen ikke er spesifisert i ordboken
dict.has_key(key) returnerer sant hvis ordboken inneholder den angitte nøkkelen.

For detaljerte forklaringer: Python-ordbokmetoder

Flere ordbokoperasjoner i Python

Koden begynner med en ordbok «dict1» og lager en kopi «dict2» . Den demonstrerer deretter flere ordbokoperasjoner: rydding «dict1» , få tilgang til verdier, hente nøkkelverdi-par og -nøkler, fjerne spesifikke nøkkelverdi-par, oppdatere en verdi og hente verdier. Disse operasjonene viser hvordan du arbeider med ordbøker i Python.

Produksjon:

{1: 'Python', 2: 'Java', 3: 'Ruby', 4: 'Scala'} {} Python dict_items([(1, 'Python'), (2, 'Java'), (3, 'Ruby'), (4, 'Scala')]) dict_keys([1, 2, 3, 4]) {1: 'Python', 2: 'Java', 3: 'Ruby'} {1: 'Python', 2: 'Java'} {1: 'Python', 2: 'Java', 3: 'Scala'} dict_values(['Python', 'Java', 'Scala']) 

Vi har dekket alt om ordbøker i Python, diskutert dens definisjon og bruk, og sett forskjellige ordbokmetoder med eksempler. Ordboken er en viktig datastruktur for lagring av data i Python. Det er veldig forskjellig fra tupler og lister.

Les mer Datastrukturer i Python

Les også:

  • Hvordan lage en ordbok i Python
  • Forskjellen mellom liste og ordbok i Python
  • Python | Slå sammen to ordbøker