Python vārdnīcā nedrīkst būt dublētās atslēgas, tāpēc ir ļoti svarīgi pārbaudīt, vai vārdnīcā jau ir atslēga. Ja nejauši piešķirat atslēgas vērtības dublikātu, jaunā vērtība pārrakstīs veco.
Tātad dotajā vārdnīcā mūsu uzdevums ir pārbaudīt, vai dotā atslēga vārdnīcā jau pastāv vai nav. Ja ir, izdrukājiet tagadni un atslēgas vērtību. Pretējā gadījumā izdrukājiet Nav klāt.
Piemērs
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> Kā pārbaudīt, vai vārdnīcā jau ir atslēga
Var būt dažādi veidi, kā pārbaudīt, vai dotā atslēga eksistē a Vārdnīca , mēs esam apskatījuši šādas pieejas:
- Python vārdnīcas atslēgas ()
- Ja un iekšā
- Python vārdnīca has_key()
- Python vārdnīca gūt() Metode
- Python “KeyError” izņēmumu apstrāde
- Python sarakstu skaits ()
1. Pārbaudiet, vai atslēga pastāv, izmantojot taustiņu() metodi
Metode keys() atgriež visu vārdnīcā pieejamo atslēgu sarakstu. Ar iebūvēto metodi atslēgas (), izmantojiet paziņojumu if ar operatoru “in”, lai pārbaudītu, vai vārdnīcā ir vai nav atslēga.
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)> |
vesels skaitlis līdz virknei java
>
>
Izvade:
Present, value = 200 Not present>
Laika sarežģītība : O(n)
Palīgtelpa : O(1)
2. Pārbaudiet, vai atslēga pastāv, izmantojot if un in
Šī metode izmanto ja paziņojums lai pārbaudītu, vai norādītā atslēga pastāv vārdnīcā.
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)> |
>
>
Izvade:
Present, value = 200 Not present>
Laika sarežģītība : O(n), kur n ir atslēgu un vērtību pāru skaits vārdnīcā.
Palīgtelpa : O(n), lai saglabātu atslēgas un vērtības vārdnīcā.
3. Pārbaudiet, vai atslēga pastāv, izmantojot has_key() metodi
Izmantojot has_key() metode atgriež patieso vērtību, ja vārdnīcā ir pieejama dotā atslēga, pretējā gadījumā tā atgriež vērtību false. Izmantojot iebūvēto metodi has_key(), izmantojiet priekšrakstu if, lai pārbaudītu, vai atslēga atrodas vārdnīcā.
Piezīme - metode has_keys() ir noņemta no Python3 versijas. Tāpēc to var izmantot tikai 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)> |
>
>
Izvade:
('Present, value =', 200) Not present> 4. Pārbaudiet, vai atslēga pastāv, izmantojot get() metodi
Iebūvētā metode gūt() atgriež vārdnīcā pieejamo atslēgu sarakstu. Izmantojot taustiņus(), izmantojiet priekšrakstu if, lai pārbaudītu, vai atslēga ir iekļauta vārdnīcā. Ja atslēga ir klāt, tiks drukāts Present, pretējā gadījumā tiks drukāts Not Present.
Python3
atrast manu iPhone no Android
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'>)> |
>
>
Izvade:
Present>
5. KeyError izņēmuma apstrāde programmā Python
Izmantot mēģināt un izņemot lai apstrādātu KeyError izņēmumu, lai noteiktu, vai diēta satur atslēgas. Izņēmums KeyError tiek ģenerēts, ja atslēgas, kurai mēģināt piekļūt, nav vārdnīcā.
Python3
ms Word ātrās piekļuves rīkjosla
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'>)> |
>
>
Izvade:
Example 1 The key doesn't exist in the dictionary Example 2 The key exists in the dictionary>
6. Pārbaudiet, vai atslēga tiek izmantota count() metode
skaitīt () metodi var izmantot, lai pārbaudītu, vai atslēga pastāv vārdnīcā, ja atslēgas skaits ir 1, tad atslēga ir cita, tā nav.
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)> |
>
>
Izvade:
Present>
Šajā rakstā mēs apspriedām apmēram 6 metodes, kuras var izmantot, lai pārbaudītu, vai vārdnīcā ir noteikta atslēga. Varat izmantot jebkuru no iepriekš minētajām metodēm, lai pārbaudītu, vai atslēga ir klāt. Atslēgu pārbaude ir ļoti svarīga, jo vārdnīcā nedrīkst būt atslēgu dublikāti.
Līdzīgi lasījumi:
- Python | Iegūstiet atslēgu no vērtības vārdnīcā
- Pārbaudiet, vai vārdnīcā ir norādītas vairākas atslēgas
- Saņemiet vārdnīcas atslēgas kā sarakstu
- Pārbaudiet, vai atslēga pastāv korešu taustiņu vārdnīcā