पायथन सूचियों में अद्वितीय शब्दकोश
शब्दकोशों की सूचियां पायथन अनुप्रयोगों में आम हैं। हालाँकि, डुप्लिकेट शब्दकोशों को प्रबंधित करना चुनौतीपूर्ण हो सकता है। यह आलेख चर्चा करता है कि डुप्लिकेट को कुशलतापूर्वक कैसे हटाया जाए और अद्वितीय शब्दकोशों की सूची कैसे प्राप्त की जाए।
शब्दकोशों की सूची पर विचार करें:
L = [
{'id': 1, 'name': 'john', 'age': 34},
{'id': 1, 'name': 'john', 'age': 34},
{'id': 2, 'name': 'hanna', 'age': 30}
]
समस्या पर विचार करना
शब्दकोशों की सूची को कम करने के लिए, एक सीधे दृष्टिकोण में सूची पर पुनरावृत्ति करना और प्रत्येक शब्दकोश की दूसरों से तुलना करना शामिल है। हालाँकि, यह प्रक्रिया बड़ी सूचियों के लिए कम्प्यूटेशनल रूप से महंगी हो सकती है।
एक अस्थायी शब्दकोश का उपयोग करना
एक अधिक कुशल समाधान डिडुप्लीकेशन को संभालने के लिए एक अस्थायी शब्दकोश का लाभ उठाता है। शब्दकोश की कुंजी प्रत्येक शब्दकोश के आईडी फ़ील्ड पर सेट है, और मान शब्दकोश पर ही सेट है। यह ऑपरेशन प्रभावी रूप से डुप्लिकेट को फ़िल्टर करता है क्योंकि प्रत्येक अद्वितीय आईडी केवल एक शब्दकोश प्रविष्टि के अनुरूप होगी। अद्वितीय शब्दकोशों का प्रतिनिधित्व करें) को values() विधि का उपयोग करके पुनर्प्राप्त किया जा सकता है।
{v['id']:v for v in L}.values()Python 3:
list({v:v for v in L}.values())
Python 2.5/2.6:
{v['id']:v for v in L}.values()
इन संक्षिप्त समाधानों के परिणामस्वरूप अद्वितीय शब्दकोशों की एक सूची बनती है:[ {'आईडी': 1, 'नाम': 'जॉन', 'उम्र': 34}, {'आईडी': 2, 'नाम': 'हन्ना', 'उम्र': 30} ]
यह दृष्टिकोण अद्वितीय शब्दकोश मूल्यों को पहचानने और निकालने के लिए एक अस्थायी शब्दकोश का लाभ उठाकर कुशलतापूर्वक डुप्लिकेट को हटा देता है।
अस्वीकरण: उपलब्ध कराए गए सभी संसाधन आंशिक रूप से इंटरनेट से हैं। यदि आपके कॉपीराइट या अन्य अधिकारों और हितों का कोई उल्लंघन होता है, तो कृपया विस्तृत कारण बताएं और कॉपीराइट या अधिकारों और हितों का प्रमाण प्रदान करें और फिर इसे ईमेल पर भेजें: [email protected] हम इसे आपके लिए यथाशीघ्र संभालेंगे।
Copyright© 2022 湘ICP备2022001581号-3