logo

Sjekk om en gitt nøkkel allerede finnes i en Python-ordbok

Python-ordboken kan ikke inneholde dupliserte nøkler, så det er veldig viktig å sjekke om en nøkkel allerede finnes i ordboken. Hvis du ved et uhell tildeler en duplikatnøkkelverdi, vil den nye verdien overskrive den gamle.

Så i en gitt ordbok er vår oppgave å sjekke om den gitte nøkkelen allerede finnes i en ordbok eller ikke. Hvis tilstede, skriv ut present og verdien av nøkkelen. Ellers skriv ut Ikke til stede.



Eksempel

  Input :   {'a': 100, 'b':200, 'c':300}, key = b   Output :   Present, value = 200   Input :   {'x': 25, 'y':18, 'z':45}, key = w   Output :   Not present>

Hvordan sjekke om en nøkkel allerede finnes i en ordbok

Det kan være forskjellige måter å sjekke om en gitt nøkkel finnes i en Ordbok , har vi dekket følgende tilnærminger:

  • Python Dictionary keys()
  • Hvis og i
  • Python ordbok har_nøkkel()
  • Python ordbok få() Metode
  • Python 'KeyError' unntakshåndtering
  • Python List count()

1. Sjekk om nøkkelen eksisterer ved hjelp av keys()-metoden

keys()-metoden returnerer en liste over alle de tilgjengelige nøklene i ordboken. Med den innebygde metoden nøkler(), bruk if-setningen med 'in'-operatøren for å sjekke om nøkkelen er til stede i ordboken eller ikke.



Python3






# Python3 Program to check whether a> # given key already exists in a dictionary.> > def> checkKey(dic, key):> >if> key>in> dic.keys():> >print>(>'Present, '>, end>=>' '>)> >print>(>'value ='>, dic[key])> >else>:> >print>(>'Not present'>)> > # Driver Code> dic>=> {>'a'>:>100>,>'b'>:>200>,>'c'>:>300>}> key>=> 'b'> checkKey(dic, key)> > key>=> 'w'> checkKey(dic, key)>

>

>

Produksjon:

Present, value = 200 Not present>

Tidskompleksitet : O(n)
Auxiliary Space : O(1)

2. Sjekk om nøkkelen eksisterer ved å bruke if og in

Denne metoden bruker hvis uttalelse for å sjekke om den gitte nøkkelen finnes i ordboken.

Python3




def> checkKey(dic, key):> > >if> key>in> dic:> >print>(>'Present, '>, end>=>' '>)> >print>(>'value ='>, dic[key])> >else>:> >print>(>'Not present'>)> > # Driver Code> dic>=> {>'a'>:>100>,>'b'>:>200>,>'c'>:>300>}> key>=> 'b'> checkKey(dic, key)> > key>=> 'w'> checkKey(dic, key)>

>

>

Produksjon:

Present, value = 200 Not present>

Tidskompleksitet : O(n), der n er antall nøkkelverdi-par i ordboken.
Hjelpeplass : O(n), for å lagre nøklene og verdiene i ordboken.

3. Sjekk om nøkkelen eksisterer ved å bruke has_key()-metoden

Bruker har_nøkkel() metoden returnerer true hvis en gitt nøkkel er tilgjengelig i ordboken, ellers returnerer den en usann. Med den innebygde metoden has_key(), bruk if-setningen for å sjekke om nøkkelen finnes i ordboken.

Merk - has_keys()-metoden er fjernet fra Python3-versjonen. Derfor kan den bare brukes i Python2.

Python




def> checkKey(dic, key):> > >if> dic.has_key(key):> >print>(>'Present, value ='>, dic[key])> >else>:> >print>(>'Not present'>)> > # Driver Function> dic>=> {>'a'>:>100>,>'b'>:>200>,>'c'>:>300>}> key>=> 'b'> checkKey(dic, key)> > key>=> 'w'> checkKey(dic, key)>

>

>

Produksjon:

('Present, value =', 200) Not present>

4. Sjekk om nøkkelen eksisterer ved å bruke get()-metoden

Den innebygde metoden få() returnerer en liste over tilgjengelige nøkler i ordboken. Med keys(), bruk if-setningen for å sjekke om nøkkelen finnes i ordboken. Hvis nøkkelen er til stede, vil den skrives ut Present ellers skrives den ikke ut.

Python3




dic>=> {>'a'>:>100>,>'b'>:>200>,>'c'>:>300>}> > # check if 'b' is none or not.> if> dic.get(>'b'>)>=>=> None>:> >print>(>'Not Present'>)> else>:> >print>(>'Present'>)>

strukturer ved hjelp av arrays i c

>

>

Produksjon:

Present>

5. Håndtering av «KeyError»-unntak i Python

Bruk prøv og unntatt for å håndtere KeyError-unntaket for å finne ut om en nøkkel er til stede i en diett. KeyError-unntaket genereres hvis nøkkelen du prøver å få tilgang til ikke er i ordboken.

Python3




dictExample>=> {>'Aman'>:>110>,>'Rajesh'>:>440>,>'Suraj'>:>990>}> > # Example 1> print>(>'Example 1'>)> > try>:> >dictExample[>'Kamal'>]> >print>(>'The key exists in the dictionary'>)> except> KeyError as error:> >print>(>'The key doesn't exist in the dictionary'>)> > # Example 2> print>(>'Example 2'>)> > try>:> >dictExample[>'Suraj'>]> >print>(>'The key exists in the dictionary'>)> except> KeyError as error:> >print>(>'The given key doesn't exist in the dictionary'>)>

>

>

Produksjon:

Example 1 The key doesn't exist in the dictionary Example 2 The key exists in the dictionary>

6. Sjekk om nøkkelen eksisterer count() Metode

telle() metoden kan brukes til å sjekke om nøkkelen finnes i ordboken, hvis antallet av nøkkelen er 1 så er nøkkelen tilstede ellers, det er den ikke.

Python3




# Python3 Program to check whether a> # given key already exists in a dictionary.> > # Driver Code> dic>=> {>'a'>:>100>,>'b'>:>200>,>'c'>:>300>}> key>=> 'b'> x>=> list>(dic.keys())> res>=> 'Not Present'> if>(x.count(key)>=>=> 1>):> >res>=> 'Present'> print>(res)>

>

>

Produksjon:

Present>

I denne artikkelen diskuterte vi om 6 metoder som kan brukes for å sjekke om en gitt nøkkel finnes i ordboken. Du kan bruke hvilken som helst av metodene ovenfor for å sjekke om nøkkelen er til stede. Å se etter nøkler er veldig viktig, da en ordbok ikke kan inneholde dupliserte nøkler.

Lignende lesninger: