इस ट्यूटोरियल में, हम एक प्रोग्राम लिखने जा रहे हैं जो अलग-अलग सूचियों में समान कुंजियों वाले सभी मानों को जोड़ता है। आइए इसे स्पष्ट रूप से समझने के लिए एक उदाहरण देखें।
इनपुट
list_one = [('a', 2), ('b', 3), ('c', 5)]
list_two = [('c', 7), ('a', 4), ('b', 2)]
आउटपुट
[('a', 6), ('b', 5), ('c', 12)]
समस्या को हल करने के लिए दिए गए चरणों का पालन करें।
- सूचियों को आरंभ करें।
- dict का उपयोग करके पहली सूची को डिक्शनरी में बदलें और इसे एक वेरिएबल में संग्रहीत करें।
- दूसरी सूची पर पुनरावृति करें और डिक्शनरी में मौजूद कुंजी में संबंधित मान जोड़ें।
- परिणाम प्रिंट करें।
उदाहरण
# सूचियों को आरंभ करना
list_one = [('a', 2), ('b', 3), ('c', 5)]
list_two = [('c', 7), ('a', 4), ('b', 2)]
# list_one को डिक्ट में बदलना
result = dict(list_one)
# दूसरी सूची पर पुनरावृति
for tup in list_two:
# डिक्ट में कुंजी की जांच
if tup[0] in result:
result[tup[0]] = result.get(tup[0]) + tup[1]
# परिणाम को टपल्स की सूची के रूप में प्रिंट करना
print(list(result.items()))
आउटपुट
यदि आप उपरोक्त कोड चलाते हैं, तो आपको निम्न परिणाम मिलेगा।
[('a', 6), ('b', 5), ('c', 12)]
हम collections से Counter का उपयोग करके बिना किसी सूची पर पुनरावृति किए उपरोक्त समस्या को हल कर सकते हैं। आइए इसे देखें।
उदाहरण
# collections से Counter आयात करना
from collections import Counter
# सूचियों को आरंभ करना
list_one = [('a', 2), ('b', 3), ('c', 5)]
list_two = [('c', 7), ('a', 4), ('b', 2)]
# परिणाम प्राप्त करना
result = Counter(dict(list_one)) + Counter(dict())
# परिणाम को टपल्स की सूची के रूप में प्रिंट करना
print(list(result.items()))
आउटपुट
यदि आप उपरोक्त कोड चलाते हैं, तो आपको निम्न परिणाम मिलेगा।
[('a', 6), ('b', 5), ('c', 12)]
निष्कर्ष
यदि ट्यूटोरियल के संबंध में आपके कोई संदेह हैं, तो उन्हें टिप्पणी अनुभाग में उल्लेख करें।