Hva er KeyError i Python? Ordbok og håndtering av dem



Denne artikkelen vil gi deg detaljert og omfattende kunnskap om hvordan du løser KeyError i Python in Dictionary.

Før vi dykker ned i KeyError inn , er det viktig å vite hvordan en ordbok på python er satt opp. Følgende tips vil bli diskutert i denne artikkelen:

Ordbok på Python

De konseptet i Python er en tilfeldig samling verdier, som har lagret dataverdier som et kart. Det er i motsetning til andre datatyper som bare har en enkelt verdi som et element. Den har nøkkelen: verdipar.





KeyError i Python

Nøkkelverdien gjør den mer effektiv. Et kolon skiller et nøkkel- og verdipar, og et 'komma' skiller hver nøkkel. Denne ordboken i python fungerer på samme måte som en vanlig ordbok. De respektive nøklene skal være unike og av uforanderlige datatyper som strenger, heltall og tupler, men nøkkelverdiene kan gjentas og får lov til å være av hvilken som helst type. Det kan være nøkler, som er strenger som refererer til tall og omvendt.



La oss se på hvordan en ordbok fungerer gjennom eksemplet nedenfor.

# Opprette en tom ordbok Dict = {} print ('Null dict:') print (Dict) # Createing Dictionary with Integer Keys Dict = {1: 'Fun', 2: 'And', 3: 'Frolic'} print ( 'nDiction med bruk av heltallstaster:') print (Dict) # Opprette ordbok med blandede taster Dict = {'Name': 'Arun', 1: [12, 23, 34, 45]} print ('nDiction med bruk av blandede taster: ') print (Dict) # Opprette en ordbok med dict () metode Dict = dict ({1:' German ', 2:' language ', 3:' is fun '}) print (' nDiction with bruken av dict (): ') print (Dict) # A Dictionary som har hvert element som Pair Dict = dict ([(1,' Hello '), (2,' Bye ')]) print (' nDiction med hver element som et par: ') print (Dict)

KeyError i Python

Siden vi er klare på hva en ordbok på python er og hvordan den fungerer. La oss nå se hva en nøkkelfeil er. KeyError i Python heves når du prøver å få tilgang til en nøkkel som ikke er i en ordbok.



Kartleggingslogikken er en datastruktur som tilordner ett datasett til viktige andre. Derfor er det en feil som heves når kartleggingen er tilgjengelig og ikke blir funnet. Det er kjent med en oppslagsfeil der den semantiske feilen vil bli oppgitt som at nøkkelen du leter etter ikke er å finne i minnet. Dette kan illustreres bedre i koden nedenfor.

android studio trinn for trinn

Her prøver jeg å få tilgang til en nøkkel kalt “D” som ikke er tilstede i ordboken. Derfor blir feilen kastet så snart den finner et unntak. Imidlertid har de gjenværende tastene i ordboken, som er skrevet ut riktig, de nøyaktige verdiene som tilsvarer dem.

// ages = {'A': 30, 'B': 28, 'C': 33} print (ages ['A']) print (ages ['B']) print (ages ['C']] utskrift (aldre ['D']) //

Håndteringsmekanisme for en KeyError i Python

Alle som støter på en KeyError kan håndtere det på en ansvarlig måte. Det er hans dyktighet å vurdere alle mulige innspill til et bestemt program og håndtere eventuelle prekære oppføringer med suksess.

Avhengig av brukssaken din, kan noen av disse løsningene være bedre eller kanskje ikke den nøyaktige løsningen du leter etter. Likevel er det endelige målet å stoppe uventede viktige feil unntak fra å dukke opp.

Hvis det kommer en feil fra en ordbok i din egen kode, kan du bruke .get () til å hente ut verdien på den angitte nøkkelen eller en standardverdi. La oss ta en titt på et utvalg.

// Liste over frukt og deres priser. mens (1): frukt = {'Apple': 300, 'Papaya': 128, 'Kiwi': 233} frukt = input ('Få pris for:') frukt1 = frukt. få (frukt) hvis frukt1: trykk ( f '{fruit} er {fruit1} rupees.') annet: trykk (f '{fruit} s kostnad er ukjent.')

En generell løsning på KeyError

Den vanlige løsningen er at du alltid kan bruke prøve unntatt blokken for å takle slike problemer ved å heve riktig kode og gi en sikkerhetskopiløsning. Sjekk ut koden nedenfor for mer klarhet.

// while (1): ages = {'Jophi': 12, 'Rao': 20, 'Irvin': 16} person = input ('Get age for:') try: print (f '{person} er { aldre [person]} år gammel. ') unntatt KeyError: utskrift (f' {person} 's alder er ukjent.') //

Med dette kommer vi til en slutt på denne KeyError i Python-artikkelen. Jeg håper denne artikkelen var informativ i å kaste lys over Pythons KeyError-unntak og hvordan den kunne reises. I tillegg kan du være klar over at i tilfelle problemet er en ordboksnøkkeloppslag i din egen kode, kan du bytte fra å få tilgang til nøkkelen direkte i ordboken til å bruke .get () -metoden med standard returverdi.

Hvis problemet ikke kommer fra din egen kode, bruker du prøve-unntatt-blokken for bedre å kontrollere kodens flyt.

For å få inngående kunnskap om Python sammen med de forskjellige applikasjonene, kan du for live online trening med 24/7 support og levetidstilgang.

Har du et spørsmål til oss? Nevn dem i kommentarfeltet i “KeyError in Python”, så kommer vi tilbake til deg.