लिखवाना

किसी समस्या की शिकायत करें सोर्स देखें Nightly · 7.4 . 7.3 · 7.2 · 7.1 · 7.0 · 6.5

शब्दकोश पहले से मौजूद होता है, जो असोसिएशन की मैपिंग या शब्दकोश को दिखाता है. डिक्शनरी में, d[k] का इस्तेमाल करके इंडेक्स करने और k in d का इस्तेमाल करके कीवर्ड की सदस्यता की जांच करने की सुविधा होती है. दोनों ही कार्रवाइयों में एक जैसा समय लगता है. अनफ़्रीज़ की गई डिक्शनरी में बदलाव किया जा सकता है. साथ ही, d[k] को असाइन करके या कुछ तरीकों को कॉल करके, उन्हें अपडेट किया जा सकता है. शब्दकोशों को बार-बार इस्तेमाल किया जा सकता है. बार-बार इस्तेमाल किए जाने पर, इंसर्शन ऑर्डर में बटनों का क्रम मिलता है. किसी मौजूदा पासकोड से जुड़ी वैल्यू अपडेट करने पर, इटरेशन के क्रम पर कोई असर नहीं पड़ता. हालांकि, किसी पासकोड को हटाकर उसे फिर से डालने पर इसका असर पड़ता है.

d = {0: "x", 2: "z", 1: "y"}
[k for k in d]  # [0, 2, 1]
d.pop(2)
d[0], d[2] = "a", "b"
0 in d, "a" in d  # (True, False)
[(k, v) for k, v in d.items()]  # [(0, "a"), (1, "y"), (2, "b")]

डिक्शनरी बनाने के चार तरीके हैं:

  1. डिक्शनरी एक्सप्रेशन {k: v, ...} से, तय की गई कुंजी/वैल्यू एंट्री वाली नई डिक्शनरी मिलती है. ये एंट्री, एक्सप्रेशन में दिखने के क्रम में डाली जाती हैं. अगर किसी भी दो मुख्य एक्सप्रेशन से एक ही वैल्यू मिलती है, तो आकलन नहीं हो पाता.
  2. शब्दकोश पर आधारित {k: v for vars in seq} शब्दकोश में हर कुंजी/वैल्यू के जोड़े को लूप इटरेशन के क्रम में डाला जाता है. डुप्लीकेट कॉपी की अनुमति है: किसी कुंजी को पहली बार शामिल करने से, क्रम में उसकी जगह तय होती है और आखिरी कुंजी, उससे जुड़ी वैल्यू तय करती है.
    {k: v for k, v in (("a", 0), ("b", 1), ("a", 2))}  # {"a": 2, "b": 1}
    {i: 2*i for i in range(3)}  # {0: 0, 1: 2, 2: 4}
    
  3. पहले से मौजूद dict फ़ंक्शन को कॉल करने पर, एक डिक्शनरी मिलती है. इसमें तय की गई एंट्री होती हैं. ये एंट्री, आर्ग्युमेंट के क्रम में डाली जाती हैं. नाम वाले आर्ग्युमेंट से पहले, पोज़िशनल आर्ग्युमेंट डाले जाते हैं. कंप्रेहेन्सन की तरह ही, डुप्लीकेट कुंजियों की अनुमति है.
  4. यूनियन एक्सप्रेशन x | y, दो मौजूदा डिक्शनरी को जोड़कर एक नई डिक्शनरी बनाता है. अगर दोनों डिक्शनरी में एक ही कीवर्ड k है, तो दाईं ओर मौजूद डिक्शनरी में कीवर्ड की वैल्यू (दूसरे शब्दों में, y[k]) जीत जाती है. यूनियन ऑपरेटर का |= वैरिएंट, डायक्शनरी में मौजूदा वैल्यू में बदलाव करता है. उदाहरण:
    d = {"foo": "FOO", "bar": "BAR"} | {"foo": "FOO2", "baz": "BAZ"}
    # d == {"foo": "FOO2", "bar": "BAR", "baz": "BAZ"}
    d = {"a": 1, "b": 2}
    d |= {"b": 3, "c": 4}
    # d == {"a": 1, "b": 3, "c": 4}

सदस्य

मिटाएं

None dict.clear()

शब्दकोश से सभी आइटम हटाएं.

रिवॉर्ड पाएँ

unknown dict.get(key, default=None)

अगर key डिक्शनरी में है, तो key के लिए वैल्यू दिखाता है, नहीं तो default के लिए. अगर default नहीं दिया गया है, तो यह डिफ़ॉल्ट रूप से None पर सेट हो जाता है, ताकि इस तरीके से कभी भी गड़बड़ी न दिखे.

पैरामीटर

पैरामीटर ब्यौरा
key ज़रूरी है
जानकारी, जिस पर जानी चाहिए.
default डिफ़ॉल्ट वैल्यू None है
कुंजी न मिलने पर, 'कोई नहीं' के बजाय डिफ़ॉल्ट वैल्यू.

आइटम

list dict.items()

की-वैल्यू टपल की सूची दिखाता है:
{2: "a", 4: "b", 1: "c"}.items() == [(2, "a"), (4, "b"), (1, "c")]

बटन

list dict.keys()

कुंजियों की सूची दिखाता है:
{2: "a", 4: "b", 1: "c"}.keys() == [2, 4, 1]

पॉप

unknown dict.pop(key, default=unbound)

डायक्शनरी से key को हटाता है और उससे जुड़ी वैल्यू दिखाता है. अगर उस कुंजी वाली कोई एंट्री नहीं मिलती, तो कुछ भी न हटाएं और बताया गया default मान दिखाएं; अगर कोई डिफ़ॉल्ट मान नहीं दिया गया था, तो उसके बजाय फ़ेल करें.

पैरामीटर

पैरामीटर ब्यौरा
key ज़रूरी है
कुंजी.
default डिफ़ॉल्ट वैल्यू unbound
है. अगर कोई बटन मौजूद नहीं है, तो डिफ़ॉल्ट वैल्यू दिखेगी.

popitem

tuple dict.popitem()

डिक्शनरी से पहला (key, value) पेयर हटाएं और उसे वापस लाएं. popitem का इस्तेमाल, डिक्शनरी में मौजूद आइटम को हटाते हुए, उन पर बार-बार जाने के लिए किया जाता है. इसका इस्तेमाल अक्सर सेट एल्गोरिदम में किया जाता है. अगर डिक्शनरी खाली है, तो popitem कॉल पूरा नहीं होता.

setdefault

unknown dict.setdefault(key, default=None)

अगर key डिक्शनरी में मौजूद है, तो उसकी वैल्यू दिखाएं. अगर ऐसा नहीं है, तो default की वैल्यू वाली कुंजी डालें और default दिखाएं. default की डिफ़ॉल्ट वैल्यू None है.

पैरामीटर

पैरामीटर ब्यौरा
key ज़रूरी है
कुंजी.
default डिफ़ॉल्ट वैल्यू None
है. अगर कोई बटन मौजूद नहीं है, तो डिफ़ॉल्ट वैल्यू दिखेगी.

अपडेट करें

None dict.update(pairs=[], **kwargs)

पहले डिक्शनरी को वैकल्पिक पोज़िशनल आर्ग्युमेंट, pairs से अपडेट करता है. इसके बाद, वैकल्पिक कीवर्ड आर्ग्युमेंट से अपडेट करता है अगर पोज़िशनल आर्ग्युमेंट मौजूद है, तो यह डिक्शनरी, आइटरेबल या None होना चाहिए. अगर यह एक डिक्शनरी है, तो इसके की/वैल्यू पेयर को इस डिक्शनरी में डाला जाता है. अगर यह एक आइटम है, तो इसमें पेयर (या दो आइटम वाले दूसरे आइटम) का क्रम होना चाहिए. इनमें से हर आइटम को डाले जाने वाले कीवर्ड/वैल्यू पेयर के तौर पर माना जाता है. हर कीवर्ड आर्ग्युमेंट name=value की वजह से, इस डिक्शनरी में नाम/वैल्यू पेयर डाला जाता है.

पैरामीटर

पैरामीटर ब्यौरा
pairs डिफ़ॉल्ट तौर पर, []
होता है शब्दकोश या एंट्री की सूची. एंट्री, ट्यूपल या सूचियां होनी चाहिए. इनमें दो एलिमेंट होने चाहिए: कुंजी, वैल्यू.
kwargs ज़रूरी है
अतिरिक्त एंट्री की डिक्शनरी.

वैल्यू

list dict.values()

वैल्यू की सूची दिखाता है:
{2: "a", 4: "b", 1: "c"}.values() == ["a", "b", "c"]