जब किसी अन्य सूची का उपयोग करके टपल की सूची को अपडेट करने की आवश्यकता होती है, तो 'डिफॉल्टडिक्ट' का उपयोग किया जा सकता है।
डिफॉल्टडिक्ट शब्दकोशों के समान एक कंटेनर है जो 'संग्रह' मॉड्यूल में मौजूद है। यह 'तानाशाही' वर्ग का उपवर्ग है। यह एक शब्दकोश जैसी वस्तु देता है। 'डिफॉल्टडिक्ट' कभी भी KeyError नहीं बढ़ाता है। यह उस कुंजी के लिए एक डिफ़ॉल्ट मान प्रदान करता है जो मौजूद नहीं है।
नीचे उसी के लिए एक प्रदर्शन है -
उदाहरण
from collections import defaultdict def merge_vals(list_1, list_2): my_dict = defaultdict(list) for i, j in list_1 + list_2: my_dict[i].append(j) return sorted([(i, max(j)) for i, j in my_dict.items()], key = lambda x:x[0]) my_list_1 = [('v', 1), ('q', 2), ('o', 0)] my_list_2 = [('q', 5), ('o', 3)] print("The first list of tuple is : ") print(my_list_1) print("The second list of tuple is : ") print(my_list_2) print("After merging, it becomes : ") print(merge_vals(my_list_1, my_list_2))
आउटपुट
The first list of tuple is : [('v', 1), ('q', 2), ('o', 0)] The second list of tuple is : [('q', 5), ('o', 3)] After merging, it becomes : [('o', 3), ('q', 5), ('v', 1)]
स्पष्टीकरण
- आवश्यक पुस्तकालय आयात किए जाते हैं।
- 'merge_vals' नाम की एक विधि परिभाषित की गई है, जो दो सूचियों को तर्क के रूप में लेती है। एक डिफ़ॉल्ट डिक्ट बनाया गया है।
- सूचियों में तत्वों को पुनरावृत्त किया जाता है, और पहली सूची के तत्व को सूचकांक के रूप में लिया जाता है, और दूसरी अनुक्रमणिका से तत्व को शब्दकोश में जोड़ा जाता है।
- इस शब्दकोश को क्रमबद्ध करके वापस कर दिया गया है।
- टुपल्स की दो सूचियां बनाई जाती हैं, और कंसोल पर प्रदर्शित की जाती हैं।
- 'मर्ज_वल्स' विधि को टुपल्स की इन दो सूची को पैरामीटर के रूप में पास करके कहा जाता है।
- यह कंसोल पर आउटपुट के रूप में प्रदर्शित होता है।