Slovník Pythonu nemôže obsahovať duplicitné kľúče, takže je veľmi dôležité skontrolovať, či sa kľúč už v slovníku nachádza. Ak omylom priradíte duplicitnú hodnotu kľúča, nová hodnota prepíše starú.
Takže v danom slovníku je našou úlohou skontrolovať, či daný kľúč už v slovníku existuje alebo nie. Ak je prítomný, vytlačte prítomnosť a hodnotu kľúča. V opačnom prípade vytlačte Nie je prítomné.
Príklad
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> Ako skontrolovať, či kľúč už existuje v slovníku
Existujú rôzne spôsoby, ako skontrolovať, či daný kľúč existuje v a Slovník , sme pokryli nasledujúce prístupy:
- Kľúče slovníka Pythonu ()
- Ak a v
- Slovník Pythonu has_key()
- Slovník Pythonu dostať () Metóda
- Spracovanie výnimiek Python „KeyError“.
- Python List count()
1. Skontrolujte, či existuje kľúč pomocou metódy kľúčov().
Metóda keys() vráti zoznam všetkých dostupných kľúčov v slovníku. So vstavanou metódou kľúče (), pomocou príkazu if s operátorom „in“ skontrolujte, či sa kľúč nachádza v slovníku alebo nie.
Python3
q2 mesiace
# 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)> |
>
>
Výkon:
Present, value = 200 Not present>
Časová zložitosť : O(n)
Pomocný priestor : O(1)
2. Skontrolujte, či kľúč existuje pomocou if a in
Táto metóda využíva ak vyhlásenie aby ste skontrolovali, či daný kľúč v slovníku existuje.
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)> |
>
>
Výkon:
Present, value = 200 Not present>
Časová zložitosť : O(n), kde n je počet párov kľúč – hodnota v slovníku.
Pomocný priestor : O(n), na uloženie kľúčov a hodnôt do slovníka.
3. Skontrolujte, či kľúč existuje pomocou metódy has_key().
Pomocou has_key() metóda vráti hodnotu true, ak je daný kľúč dostupný v slovníku, v opačnom prípade vráti hodnotu false. Pri vstavanej metóde has_key() použite príkaz if na kontrolu, či sa kľúč nachádza v slovníku.
Poznámka - Metóda has_keys() bola odstránená z verzie Python3. Preto ho možno použiť iba v Pythone2.
Python
js dekódovanie base64
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)> |
>
r v jazyku c
>
Výkon:
('Present, value =', 200) Not present> 4. Pomocou metódy get() skontrolujte, či kľúč existuje
Vstavaná metóda dostať () vráti zoznam dostupných kľúčov v slovníku. Pomocou kľúča () pomocou príkazu if skontrolujte, či sa kľúč nachádza v slovníku. Ak je kľúč prítomný, vytlačí sa Prítomný, v opačnom prípade sa vypíše Neprítomný.
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'>)> |
>
>
Výkon:
Present>
5. Spracovanie výnimky „KeyError“ v Pythone
Použite skúste a okrem na spracovanie výnimky KeyError, aby ste zistili, či je kľúč prítomný v strave. Výnimka KeyError sa vygeneruje, ak sa kľúč, ku ktorému sa pokúšate dostať, nenachádza v slovníku.
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'>)> |
>
>
Výkon:
Example 1 The key doesn't exist in the dictionary Example 2 The key exists in the dictionary>
6. Skontrolujte, či sa kľúč používa Count() metóda
počítať () metódu možno použiť na kontrolu, či kľúč existuje v slovníku, ak je počet kľúča 1, potom je kľúč prítomný, inak nie je.
výhody elektriny
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)> |
>
>
Výkon:
Present>
V tomto článku sme diskutovali o 6 metódach, ktoré možno použiť na kontrolu, či daný kľúč v slovníku existuje. Ak chcete skontrolovať, či je kľúč prítomný, môžete použiť ktorúkoľvek z vyššie uvedených metód. Kontrola kľúčov je veľmi dôležitá, pretože slovník nemôže obsahovať duplicitné kľúče.
Podobné čítanie:
- Python | Získajte kľúč z hodnoty v slovníku
- Skontrolujte, či v slovníku existuje viacero kľúčov
- Získajte kľúče slovníka ako zoznam
- Otestujte, či kľúč existuje v slovníku tuple kľúčov