कभी-कभी दी गई कुंजियों से शब्दकोश बनाना आवश्यक हो जाता है। मोटे तौर पर ऐसा करने में समय लगेगा और यह अधिक थकाऊ काम होगा। इसलिए, fromkeys () केवल एक विधि का उपयोग करके इस समस्या को आसानी से हल करने में हमारी सहायता करता है। इस लेख में इस सुविधा से जुड़े संचालन और अन्य पहलुओं की व्याख्या की गई है।
seq: एक शब्दकोश में बदलने का क्रम।
val: आरंभिक मान जिन्हें जेनरेट की गई कुंजियों को असाइन करने की आवश्यकता है ... डिफॉल्ट टू नो।
रिटर्न: यदि कोई मान प्रदान नहीं किया गया है, तो कोई नहीं के लिए मैप की गई कुंजियों वाला एक शब्दकोश, अन्यथा फ़ील्ड में प्रदान किए गए मान के लिए।
< /blockquote>कोड # 1: फ्रॉमकीज का प्रदर्शन ()
<टेबल बॉर्डर = "0 "सेलपैडिंग =" 0 "सेलस्पेसिंग =" 0 " >
# Python 3 डेमो कोड
# चाबियों के साथ काम करना ()
# इनिशियलाइज़ेशन सीक्वेंस
seq
<कोड वर्ग = "कीवर्ड"> = कोड> <कोड वर्ग = "सादा"> { कोड> <कोड वर्ग = "स्ट्रिंग"> `ए` कोड> <कोड वर्ग = "सादा">, कोड> <कोड वर्ग = "स्ट्रिंग"> `बी` कोड> <कोड वर्ग = "सादा">, < /कोड> <कोड वर्ग = "स्ट्रिंग"> `सी` कोड> <कोड वर्ग = "सादा">, कोड> <कोड वर्ग = "स्ट्रिंग"> `डी` कोड> <कोड वर्ग = "सादा">, कोड> <कोड वर्ग = "स्ट्रिंग"> `ई` कोड> <कोड वर्ग = "सादा">} कोड>
<कोड वर्ग = "अपरिभाषित Spaces"> # फ्रॉम कीज़ () का उपयोग करके सीक्वेंस को डिक्टेट में बदलने के लिए
# कोई नहीं का उपयोग करके इनिशियलाइज़ करें कोड> कोड>
<कोड वर्ग = "सादा"> res_dict कोड> <कोड वर्ग = "कीवर्ड"> = कोड> <कोड वर्ग = "कार्य"> तानाशाही कोड> <कोड वर्ग = "सादा">। fromkeys (seq)
# Print dict बनाया गया
Print
(
"कोई नहीं मान के साथ नव निर्मित dict:"
+ कोड> कोड> <कोड वर्ग = "फ़ंक्शंस"> str कोड> <कोड वर्ग = "सादा"> (res_dict)) कोड>
"> # फ्रॉमकीज़ () का उपयोग अनुक्रम को डिक्टेट में बदलने के लिए
# 1 के साथ इनिशियलाइज़ करें
res_dict 2 कोड> <कोड वर्ग = "कीवर्ड"> = कोड> <कोड वर्ग = "कार्य"> तानाशाही कोड> <कोड वर्ग = "सादा">। Fromkeys (seq,
1
)
# प्रिंट डिक्ट बनाया गया
Print
(
"नए बनाए गए निर्देश 1 के साथ मूल्य के रूप में:"
+
str
(res_dict2))
बाहर निकलें:
नया बनाया गया निर्देश कोई नहीं मान: {`d`: कोई नहीं, `a`: कोई नहीं, `b`: कोई नहीं, `c`: कोई नहीं, `e`: कोई नहीं}
नया बनाया गया dict 1 मान के रूप में: {` d ` : 1,` a `: 1,` b `: 1,` c `: 1,` e `: 1}
अपरिवर्तनीय वस्तुओं के साथ आक्षेप () व्यवहार मान:
फ्रॉमडिक्ट () फ़ंक्शन को डिफ़ॉल्ट मानों के रूप में एक बहु-अक्षीय वस्तु के साथ भी आपूर्ति की जा सकती है। लेकिन इस मामले में, शब्दकोश से एक गहरी प्रतिलिपि बनाई जाती है, अर्थात, यदि हम मूल सूची में कोई मान जोड़ते हैं, तो सभी प्रमुख मानों में जोड़ होता है।
रोकथाम: कुछ डिक्शनरी कॉम्प्रिहेंशन तकनीकों का उपयोग एक नई सूची को प्रमुख मानों के रूप में बनाने के लिए किया जा सकता है जो मूल सूची को प्रमुख मानों के रूप में इंगित नहीं करता है।
कोड # 2: व्यवहार प्रदर्शित करें परिवर्तनशील वस्तुओं के साथ।
# Python 3 डेमो कोड
# परिवर्तनशील वस्तुओं के साथ व्यवहार
<कोड वर्ग = "टिप्पणियां"> # अनुक्रम और सूची आरंभीकरण
< कोड वर्ग = "सादा"> seq कोड> <कोड वर्ग = "कीवर्ड"> = कोड> <कोड वर्ग = "सादा"> { कोड> <कोड वर्ग = "स्ट्रिंग"> `ए` < / कोड> <कोड वर्ग = "सादा">, कोड> <कोड वर्ग = "सेंट रिंग"> `बी` कोड> <कोड वर्ग = "सादा">, कोड> <कोड वर्ग = " स्ट्रिंग"> `सी` कोड> <कोड वर्ग = "सादा">, कोड> <कोड वर्ग = "स्ट्रिंग"> `डी` कोड> <कोड वर्ग = "सादा">, कोड> <कोड वर्ग =" स्ट्रिंग ">` ई ` कोड> <कोड वर्ग = "सादा">} कोड>
कोड वर्ग = "सादा"> लिस1 कोड> <कोड वर्ग =" कीवर्ड "> = कोड> <कोड वर्ग =" सादा "> [ कोड> <कोड वर्ग = "मान"> 2 कोड> <कोड वर्ग = "सादा">, कोड> <कोड वर्ग = "मान"> 3 कोड> <कोड वर्ग = "सादा">] कोड>
<कोड वर्ग = "टिप्पणियां"> # अनुक्रम को डिक्टेट में बदलने के लिए फ्रॉमकी () का उपयोग करना
# सामान्य विधि का उपयोग करना
res_dict कोड> <कोड वर्ग = "कीवर्ड"> = कोड> <कोड वर्ग = "कार्य"> तानाशाही कोड> <कोड वर्ग = "सादा">। fromkeys (seq, lis1)
# Print create dict
प्रिंट करें कोड> <कोड वर्ग = "सादा"> (
"सूची मानों के साथ नया बनाया गया निर्देश:"
< कोड वर्ग = "कीवर्ड"> + कोड> <कोड वर्ग = "कार्य"> str कोड> <कोड वर्ग = "सादा"> (res_dict)) कोड>
# lis1 में जोड़ें
lis1.append (
4
)
# प्रिंट डिक्टेट जोड़ने के बाद
# ध्यान दें कि जोड़ना सभी मानों में होता है
Print
(
" जोड़ने के बाद सूची मानों के साथ dict: "
+ कोड> <कोड वर्ग = "कार्य"> str कोड> <कोड वर्ग = "सादा"> (आर es_dict))
lis1
=
[
2
,
3
] कोड>
<कोड वर्ग = "कीवर्ड"> प्रिंट कोड> <कोड वर्ग = "सादा"> ( कोड> <कोड वर्ग = "स्ट्रिंग"> `` )
# फ्रॉमकीज़ () का इस्तेमाल करके सीक्वेंस को डिक्टेट में कन्वर्ट करने के लिए
# dict. समझ
< कोड वर्ग = "सादा"> res_dict2 <कोड वर्ग = "कीवर्ड"> = कोड> <कोड वर्ग = "सादा"> {कुंजी: < /कोड> <कोड वर्ग = "फ़ंक्शंस"> सूची कोड> <कोड वर्ग = "सादा"> (लिस 1) कोड> <कोड वर्ग = "कीवर्ड"> के लिए कोड> <कोड वर्ग = "सादा" "> कुंजी कोड> <कोड वर्ग =" कीवर्ड "> कोड> <कोड वर्ग =" सादा "> seq} कोड>
<कोड वर्ग = "अपरिभाषित रिक्त स्थान"> # Print create dict
Print
(
" सूची मानों के साथ नव निर्मित निर्देश: "
+ कोड> <कोड वर्ग = "कार्य"> str कोड> <कोड वर्ग = "सादा"> (res_dict2)) कोड>
# lis1 में जोड़ें
lis1.append (
4 कोड> कोड> <कोड वर्ग = "सादा">) कोड>
<कोड वर्ग = "कॉम मेंट्स"> # पी जोड़ने के बाद निर्देश दें # ध्यान दें कि जोड़ना अभी नहीं हो रहा है।
Print
(
" dict with list जोड़ने के बाद मान (कोई परिवर्तन नहीं): "
+
str
(res_dict2)) कोड>
आउटपुट: मजबूत>
सूची मूल्यों के साथ नव निर्मित निर्देश: {`d`: [2, 3], `e`: [2, 3], `c`: [2, 3] , `a`: [2, 3], `बी`: [2, 3]}
जोड़ने के बाद सूची मूल्यों के साथ ताना: {`डी`: [2, 3, 4], `ई`: [2, 3, 4], `सी `: [2, 3, 4], `ए`: [2, 3, 4], `बी`: [2, 3, 4]}सूची मूल्यों के साथ नव निर्मित निर्देश: { `डी`: [2, 3], `ई`: [2, 3], `सी`: [2, 3], `ए`: [2, 3], `बी`: [2, 3]}
जोड़ने के बाद सूची मूल्यों के साथ निर्देश (कोई परिवर्तन नहीं): {`d`: [2, 3], `e`: [2, 3], `c`: [2, 3], `a `: [2, 3], `बी`: [2, 3]}
Shop
Latest questions