में कई workflows जहां मनमाने ढंग से कुंजी के लिए एक डिफ़ॉल्ट / प्रारंभिक मूल्य अनुलग्न करना चाहते हैं, तो आप नहीं है जरूरत है हैश करने के लिए प्रत्येक कुंजी को व्यक्तिगत रूप से समय से आगे। आप उपयोग कर सकते हैं collections.defaultdict। उदाहरण के लिए:
from collections import defaultdict
d = defaultdict(lambda: None)
print(d[1]) # None
print(d[2]) # None
print(d[3]) # None
यह अधिक कुशल है, यह तात्कालिकता में आपके सभी कुंजी हैश करने के लिए बचाता है। इसके अलावा, defaultdictएक उपवर्ग है dict, इसलिए आमतौर पर वापस एक नियमित शब्दकोश में बदलने की कोई आवश्यकता नहीं है।
वर्कफ़्लोज़ के लिए जहां आपको अनुमेय कुंजी पर नियंत्रण की आवश्यकता होती है , आप dict.fromkeysस्वीकृत उत्तर के अनुसार उपयोग कर सकते हैं :
d = dict.fromkeys([1, 2, 3, 4])
dict.fromkeys([1, 2, 3], []), सभी कुंजियों को एक ही सूची में मैप किया जाता है, और एक को संशोधित करके उन सभी को संशोधित किया जाएगा।