Computer >> कंप्यूटर >  >> प्रोग्रामिंग >> Python

पायथन शब्दकोशों में लापता कुंजियों को संभालना

पायथन में एक कंटेनर होता है जिसे डिक्शनरी कहा जाता है। शब्दकोशों में, हम इसके मूल्य के लिए कुंजियों को मैप कर सकते हैं। शब्दकोश का उपयोग करके मूल्यों को निरंतर समय में एक्सेस किया जा सकता है। लेकिन जब दी गई कुंजियाँ मौजूद नहीं होती हैं, तो इसमें कुछ त्रुटियाँ हो सकती हैं।

इस खंड में हम देखेंगे कि इस प्रकार की त्रुटियों से कैसे निपटा जाए। यदि हम गुम चाबियों तक पहुँचने का प्रयास कर रहे हैं, तो यह इस तरह की त्रुटियाँ लौटा सकता है।

उदाहरण कोड

country_dict = {'India' : 'IN', 'Australia' : 'AU', 'Brazil' : 'BR'}
print(country_dict['Australia'])
print(country_dict['Canada']) # This will return error

आउटपुट

AU
---------------------------------------------------------------------------
KeyErrorTraceback (most recent call last)
<ipython-input-2-a91092e7ee85> in <module>()
      2 
      3 print(country_dict['Australia'])
----> 4 print(country_dict['Canada'])# This will return error

KeyError: 'Canada'

KeyError को संभालने के लिए get() विधि का उपयोग करना

हम चाबियों की जांच के लिए गेट विधि का उपयोग कर सकते हैं। यह विधि दो पैरामीटर लेती है। पहला वाला कुंजी है, और दूसरा डिफ़ॉल्ट मान है। जब कुंजी मिल जाती है, तो यह कुंजी से संबद्ध मान वापस कर देगी, लेकिन जब कुंजी मौजूद नहीं है, तो यह डिफ़ॉल्ट मान लौटा देगी, जिसे दूसरे तर्क के रूप में पारित किया जाता है।

उदाहरण कोड

country_dict = {'India' : 'IN', 'Australia' : 'AU', 'Brazil' : 'BR'}
print(country_dict.get('Australia', 'Not Found'))
print(country_dict.get('Canada', 'Not Found'))

आउटपुट

AU
Not Found

KeyError को संभालने के लिए setdefault() विधि का उपयोग करना

यह सेटडिफॉल्ट () विधि प्राप्त () विधि के समान है। यह दो तर्क भी लेता है जैसे प्राप्त करें ()। पहला वाला कुंजी है और दूसरा डिफ़ॉल्ट मान है। इस पद्धति का एकमात्र अंतर यह है कि जब कोई कुंजी गुम होती है, तो यह डिफ़ॉल्ट मान के साथ नई कुंजियाँ जोड़ देगा।

उदाहरण कोड

country_dict = {'India' : 'IN', 'Australia' : 'AU', 'Brazil' : 'BR'}
country_dict.setdefault('Canada', 'Not Present') #Set a default value for Canada
print(country_dict['Australia'])
print(country_dict['Canada'])

आउटपुट

AU
Not Present

डिफ़ॉल्ट डिक्ट का उपयोग करना

डिफॉल्टडिक्ट एक कंटेनर है। यह पायथन में संग्रह मॉड्यूल पर स्थित है। डिफॉल्टडिक्ट डिफ़ॉल्ट फैक्ट्री को अपने तर्क के रूप में लेता है। प्रारंभ में डिफ़ॉल्ट फ़ैक्टरी 0 (पूर्णांक) पर सेट है। जब कोई कुंजी मौजूद नहीं होती है, तो यह डिफ़ॉल्ट फ़ैक्टरी का मान लौटाती है।

हमें विधियों को बार-बार निर्दिष्ट करने की आवश्यकता नहीं है, इसलिए यह शब्दकोश वस्तुओं के लिए तेज़ विधि प्रदान करता है।

उदाहरण कोड

import collections as col
#set the default factory with the string 'key not present'
country_dict = col.defaultdict(lambda: 'Key Not Present')
country_dict['India'] = 'IN'
country_dict['Australia'] = 'AU'
country_dict['Brazil'] = 'BR'
print(country_dict['Australia'])
print(country_dict['Canada'])

आउटपुट

AU
Key Not Present

  1. पायथन में पैटर्न कैसे प्रिंट करें?

    नेस्टेड फॉर लूप्स का उपयोग करके पायथन में पैटर्न मुद्रित किए जा सकते हैं। बाहरी लूप का उपयोग पंक्तियों की संख्या के माध्यम से पुनरावृति करने के लिए किया जाता है जबकि आंतरिक लूप का उपयोग स्तंभों की संख्या को संभालने के लिए किया जाता है। आवश्यकता के अनुसार विभिन्न पैटर्न बनाने के लिए प्रिंट स्टेटमेंट

  1. पायथन में किसी शब्दकोश की सभी कुंजियों को कैसे प्रिंट करें?

    डिक्शनरी ऑब्जेक्ट में कुंजियाँ () विधि होती है जो हमारे लिए यह काम करती है। >>> D1 = {1:a, 2:b,3:c} >>> D1.keys() dict_keys([1, 2, 3]) >>> list(D1.keys()) [1, 2, 3] लूप के लिए उपयोग करके चलने योग्य सूची वस्तु का पता लगाया जा सकता है >>> L1 = list(D1.keys())

  1. पायथन डिक्शनरी

    शब्दकोश मुख्य मानचित्रण प्रकार हैं जिनका उपयोग हम पायथन में करेंगे। यह ऑब्जेक्ट जावा में मैप के समान है। पायथन में, हम घुंघराले ब्रेसिज़ का उपयोग करके शब्दकोश शाब्दिक बनाते हैं {} , कोलन : . का उपयोग करके मानों से कुंजियों को अलग करना , और अल्पविराम का उपयोग करके कुंजी/मान जोड़े को अलग करना , । एक