पायथन में डिक्शनरी एक प्रकार की डेटा संरचना है जो कीज़ को वैल्यूज़ से की-वैल्यू पेयर के रूप में मैप करती है। ये सबसे अधिक उपयोग की जाने वाली डेटा संरचनाओं में से एक हैं और इनके कई रोचक गुण होते हैं। इन्हें कर्ली ब्रेसेस के एक जोड़े में संलग्न करके दर्शाया जाता है जैसे नीचे दिखाया गया है।
dict = {'day1': 'Mon', 'day2': 'Tue', 'day3': 'Wed'}
डिक्शनरी में एलिमेंट्स या की-वैल्यू पेयर्स सिंगल कोट्स में दर्शाए जाते हैं और कोलन द्वारा अलग किए जाते हैं।
डिक्शनरी बनाना
हम की के रूप में लिखे गए वैल्यूज़ को असाइन करके एक डिक्शनरी बनाते हैं।
उदाहरण
Dict1 = {'day1': 'Mon', 'day2': 'Tue', 'day3': 'Wed'}
print(type(dict1))
print(dict1)
# dict() मेथड का उपयोग करके
dict2 = dict({('day1', 'Mon'), ('day2', 'Tue'), ('day3', 'Wed')})
print(type(dict2))
print(dict2)
आउटपुट
उपरोक्त कोड चलाने पर निम्न परिणाम मिलता है:
{'day1': 'Mon', 'day2': 'Tue', 'day3': 'Wed'}
डिक्शनरी में वैल्यूज़ एक्सेस करना
डिक्शनरी के एलिमेंट्स को एक्सेस करने के लिए, हम की के साथ स्क्वायर ब्रैकेट्स का उपयोग करके उसकी वैल्यू प्राप्त कर सकते हैं। हम डिक्शनरी एलिमेंट्स के लिए वैल्यूज़ प्राप्त करने के लिए get() मेथड का भी उपयोग कर सकते हैं।
उदाहरण
dict = {'day1': 'Mon', 'day2': 'Tue', 'day3': 'Wed', 'weekend': {'d1': 'Saturday', 'd2': 'Sunday'}}
print(dict['day2'])
print(dict['weekend'])
print(dict.get('day3'))
आउटपुट
उपरोक्त कोड चलाने पर निम्न परिणाम मिलता है:
Tue
{'d1': 'Saturday', 'd2': 'Sunday'}
Wed
डिक्शनरी में एलिमेंट्स जोड़ना
हम एक नई की-वैल्यू पेयर जोड़कर डिक्शनरी में नए एलिमेंट्स जोड़ते हैं। हम नेस्टेड डिक्शनरी बनाने के लिए एक एलिमेंट के रूप में दूसरी डिक्शनरी भी जोड़ सकते हैं।
उदाहरण
dict = {'day1': 'Mon', 'day2': 'Tue', 'day3': 'Wed'}
dict['day4'] = 'Thu'
dict['day5'] = 'Fri'
print(dict)
आउटपुट
उपरोक्त कोड चलाने पर निम्न परिणाम मिलता है:
{'day1': 'Mon', 'day2': 'Tue', 'day3': 'Wed', 'day4': 'Thu', 'day5': 'Fri'}
डिक्शनरी अपडेट करना
हम एक नई एंट्री या की-वैल्यू पेयर जोड़कर और मौजूदा एंट्री को संशोधित करके डिक्शनरी को अपडेट कर सकते हैं। हमने ऊपर डिक्शनरी में नए एलिमेंट्स जोड़ना पहले ही देख लिया है। अब हम मौजूदा एंट्री के संशोधन को देखेंगे। यहां हम बस की लेते हैं और एलिमेंट को नई वैल्यू असाइन करते हैं।
उदाहरण
dict = {'day1': 'Mon', 'day2': 'Tue', 'day3': 'Wed'}
dict['day1'] = 'Monday'
dict['day2'] = 'Tuesday'
print(dict)
आउटपुट
उपरोक्त कोड चलाने पर निम्न परिणाम मिलता है:
{'day1': 'Monday', 'day2': 'Tuesday', 'day3': 'Wed'}
डिक्शनरी के एलिमेंट्स डिलीट करना
डिक्शनरी के विशिष्ट एलिमेंट्स को del कीवर्ड का उपयोग करके डिलीट किया जा सकता है। इसका उपयोग पूरी डिक्शनरी को डिलीट करने के लिए भी किया जा सकता है। clear() मेथड भी है जिसका उपयोग पूरी डिक्शनरी से एलिमेंट्स हटाने के लिए किया जा सकता है।
उदाहरण
dict = {'day1': 'Mon', 'day2': 'Tue', 'day3': 'Wed'}
print(dict)
del dict['day3']
print(dict)
dict.clear()
print(dict)
आउटपुट
उपरोक्त कोड चलाने पर निम्न परिणाम मिलता है:
{'day1': 'Mon', 'day2': 'Tue', 'day3': 'Wed'}
{'day1': 'Mon', 'day2': 'Tue'}
{}
पायथन में डिक्शनरी का उपयोग करते समय कुछ सामान्य गलतियां
dict_name[key_value]का उपयोग करके वैल्यूज़ एक्सेस करना हमेशा सही ढंग से काम नहीं कर सकता और एक्सेप्शन थ्रो कर सकता है। इसलिए डिक्शनरी के एलिमेंट्स को एक्सेस करने के लिएget()मेथड एक बेहतर तरीका है।- इसी तरह डिक्शनरी में वैल्यूज़ अपडेट करने के लिए डायरेक्ट
dict_name[key_value] = 'new_value'दृष्टिकोण के बजायupdate(key=value)मेथड का उपयोग करें। dict1 = dict2का उपयोग करके डिक्शनरी की कॉपी बनाने से दो डिक्शनरी बनेंगी लेकिन दोनों एक ही ऑब्जेक्ट को रेफर करेंगी। इसलिए दोनों एक ही समय में अपडेट हो जाएंगी। यदि आप दोनों कॉपीज़ को अपडेट होने से बचाना चाहते हैं तो शैलो कॉपी का उपयोग करें।- डिक्शनरी के एलिमेंट्स को एक विशिष्ट क्रम में जाने के लिए
sorted()मेथड का उपयोग करें। - इस पर निर्णय लें कि डिक्शनरी का उपयोग कब करना है और कब नहीं क्योंकि टपल्स, सेट्स आदि जैसी अन्य डेटा संरचनाएं हैं जो आवश्यकता में बेहतर फिट हो सकती हैं।