पायथन डिक्शनरी से ()

Fromkeys () विधि उपयोगकर्ता द्वारा प्रदान किए गए मूल्य के साथ तत्वों के दिए गए अनुक्रम से एक नया शब्दकोश बनाती है।

fromkeys()विधि का सिंटैक्स है:

 Dictionary.fromkeys (अनुक्रम, मूल्य)

fromkeys () पैरामीटर

fromkeys() विधि दो पैरामीटर लेता है:

  • अनुक्रम - तत्वों का अनुक्रम जो नए शब्दकोश के लिए कुंजी के रूप में उपयोग किया जाना है
  • मूल्य (वैकल्पिक) - मूल्य जो शब्दकोश के प्रत्येक तत्व के लिए निर्धारित है

Fromkeys से वापसी मूल्य ()

fromkeys() विधि शब्दकोश की कुंजी के रूप में तत्वों के दिए गए अनुक्रम के साथ एक नया शब्दकोश देता है।

यदि मान तर्क सेट है, तो नए बनाए गए शब्दकोश का प्रत्येक तत्व प्रदान किए गए मान पर सेट है।

उदाहरण 1: कुंजियों के अनुक्रम से एक शब्दकोश बनाएं

 # vowels keys keys = ('a', 'e', 'i', 'o', 'u' ) vowels = dict.fromkeys(keys) print(vowels)

आउटपुट

 ((ए ’: कोई नहीं, 'यू’: कोई नहीं,: ओ ’: कोई नहीं,: ई’: कोई नहीं,' मैं ’: कोई नहीं) 

उदाहरण 2: मान के साथ कुंजियों के अनुक्रम से एक शब्दकोश बनाएं

 # vowels keys keys = ('a', 'e', 'i', 'o', 'u' ) value = 'vowel' vowels = dict.fromkeys(keys, value) print(vowels)

आउटपुट

 ('a': 'स्वर', 'u': 'स्वर', 'o': 'स्वर', 'e': 'स्वर', 'i': 'स्वर') 

उदाहरण 3: उत्परिवर्तित वस्तु सूची से एक शब्दकोश बनाएं

 # vowels keys keys = ('a', 'e', 'i', 'o', 'u' ) value = (1) vowels = dict.fromkeys(keys, value) print(vowels) # updating the value value.append(2) print(vowels)

आउटपुट

 ((ए ’: (१), 'यू’: (१),: ओ ’: (१),' ई’: (१), 1 आई ’: (१)) ('ए’: (१, २) ), 'यू': (१, २), 'ओ': (१, २), 'ई': (१, २), 'आई': (१, २) 

यदि मूल्य एक उत्परिवर्तनीय वस्तु है (जिसका मूल्य संशोधित किया जा सकता है) जैसे सूची, शब्दकोश, आदि, जब उत्परिवर्तित वस्तु को संशोधित किया जाता है, तो अनुक्रम का प्रत्येक तत्व भी अपडेट हो जाता है।

ऐसा इसलिए है क्योंकि प्रत्येक तत्व को उसी ऑब्जेक्ट का संदर्भ दिया गया है (मेमोरी में उसी ऑब्जेक्ट को इंगित करता है)।

इस समस्या से बचने के लिए, हम शब्दकोश समझ का उपयोग करते हैं।

 # vowels keys keys = ('a', 'e', 'i', 'o', 'u' ) value = (1) vowels = ( key : list(value) for key in keys ) # you can also use ( key : value(:) for key in keys ) print(vowels) # updating the value value.append(2) print(vowels)

आउटपुट

 ('ए': (1), 'यू': (1), 'ओ': (1), 'ई': (1), 'आई': (1)) ('ए': (1)) 'u': (1), 'ओ': (1), 'ई': (1), 'आई': (1) 

यहां, कुंजियों में प्रत्येक कुंजी के लिए, मूल्य से एक नई सूची बनाई जाती है और इसे सौंपा जाता है।

संक्षेप में, मान तत्व को नहीं सौंपा गया है लेकिन एक नई सूची इससे बनाई गई है, जिसे बाद में शब्दकोश में प्रत्येक तत्व को सौंपा गया है।

दिलचस्प लेख...