Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> Python

Python में सूची से डुप्लिकेट कैसे हटाएं

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


जब आप Python में सूची के साथ काम कर रहे होते हैं, तो ऐसा परिदृश्य हो सकता है जहां आप सूची से डुप्लिकेट हटाना चाहते हैं। उदाहरण के लिए, मान लीजिए आप एक शेफ हैं जो अपने रेस्तरां के लिए पुराने और नए मेनू को मर्ज कर रहे हैं। आप दोनों मेनू को मिलाने से होने वाले किसी भी डुप्लिकेट को हटाना चाह सकते हैं।

यह ट्यूटोरियल dict.fromkeys() मेथड का उपयोग करके और सूची को सेट में बदलकर कवर करेगा। हम चर्चा करेंगे कि इन दो मेथड्स के आउटपुट को वापस सूची में कैसे बदला जाए ताकि आप अपने डेटा को सूची के रूप में व्याख्या कर सकें।

Python Remove Duplicates From a List

आप Python सेट या dict.fromkeys() मेथड का उपयोग करके डुप्लिकेट हटा सकते हैं।

dict.fromkeys() मेथड सूची को डिक्शनरी में बदलता है। डिक्शनरी में डुप्लिकेट मान नहीं हो सकते इसलिए dict.fromkeys() द्वारा केवल अद्वितीय मानों वाली डिक्शनरी लौटाई जाती है।

सेट, डिक्शनरी की तरह, डुप्लिकेट मान नहीं रख सकते। यदि हम सूची को सेट में बदलते हैं, तो सभी डुप्लिकेट हटा दिए जाते हैं।

Python Remove Duplicates from List: dict.fromkeys()

Python डिक्शनरीज़ की-वैल्यू संरचना में डेटा संग्रहीत करती हैं। डिक्शनरीज़ कुंजियों को मानों से मैप करती हैं और Python में डेटा संग्रहीत करने वाली एक जोड़ी बनाती हैं।

Python में डिक्शनरीज़ में डुप्लिकेट कुंजियाँ शामिल नहीं हो सकतीं। यदि हम अपनी सूची को डिक्शनरी में बदलते हैं, तो यह किसी भी डुप्लिकेट मान को हटा देगा। यहीं पर fromkeys() मेथड आता है।

dict.fromkeys() उदाहरण

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

fromkeys() मेथड का सिंटैक्स निम्नानुसार है:

dictionary_name.fromkeys(keys, value)

fromkeys दो पैरामीटर लेता है: keys और value। keys पैरामीटर इटरेटर है, जो नई डिक्शनरी की कुंजियों को निर्दिष्ट करता है जिसे आप बनाना चाहते हैं। हमारा value पैरामीटर वैकल्पिक है और सभी कुंजियों के लिए मान रखता है। हमें इस उदाहरण के लिए इस पैरामीटर की आवश्यकता नहीं है, इसलिए हम इसे अनदेखा करेंगे।

मान लीजिए कि हम एक शेफ हैं जो पुराने और नए पिज्जा मेनू को एक बड़े मेनू में मिला रहे हैं। नए मेनू में कई नए पिज्जा शामिल हैं जिन पर हम महीनों से काम कर रहे हैं। लेकिन, हम पुराने मेनू के पिज्जा पेश करना चाहते हैं। हम नहीं चाहते कि मेनू पर डुप्लिकेट दिखाई दें, क्योंकि इससे ग्राहक भ्रमित होंगे।

नए मेनू में मौजूद किसी भी डुप्लिकेट को हटाने के लिए, हम निम्न कोड का उपयोग कर सकते हैं:

new_menu = ['Hawaiian', 'Margherita', 'Mushroom', 'Prosciutto', 'Meat Feast', 'Hawaiian', 'Bacon', 'Black Olive Special', 'Sausage', 'Sausage']
final_new_menu = list(dict.fromkeys(new_menu))
print(final_new_menu)

हमारा कोड हमारे डुप्लिकेट तत्वों को हटाता है और लौटाता है:

['Hawaiian', 'Margherita', 'Mushroom', 'Prosciutto', 'Meat Feast', 'Bacon', 'Black Olive Special', 'Sausage']

पहली पंक्ति पर, हम new_menu नामक एक Python वेरिएबल घोषित करते हैं जो नए मेनू के सभी पिज्जा को संग्रहीत करता है। ध्यान दें कि इस सूची में डुप्लिकेट मान हैं — Sausage और Hawaiian दोनों Python सूचियों में दो बार दिखाई देते हैं।

हम अपने new_menu वेरिएबल से डिक्शनरी बनाने के लिए dict.fromkeys() मेथड का उपयोग करते हैं। अगला, हम अपने डेटा को डिक्शनरी से Python सरणी, या सूची में बदलने के लिए list() का उपयोग करते हैं। कोड की अंतिम पंक्ति पर, हम अपनी संशोधित सूची प्रिंट करते हैं।

जैसा कि आप देख सकते हैं, हमारे प्रोग्राम ने हमारे डेटा से डुप्लिकेट मान हटा दिए हैं, और Sausage और Hawaiian हमारी नई सूची में एक बार दिखाई देते हैं।

Remove Duplicates from List Python: सेट्स

Python सेट ऑब्जेक्ट एक डेटा संरचना है जो अनक्रमित (unordered) और अनुक्रमित नहीं (unindexed) दोनों है। सेट्स Python में अद्वितीय आइटम्स के संग्रह को संग्रहीत करते हैं। सूचियों के विपरीत, सेट्स डुप्लिकेट मान संग्रहीत नहीं कर सकते।

तो, क्योंकि सेट्स डुप्लिकेट आइटम संग्रहीत नहीं कर सकते, हम अपनी सूची को सेट में बदलकर उन्हें हटा सकते हैं। Python में, सेट्स अल्पविराम से अलग किए गए आइटम्स की सूची होते हैं जो घुंघराले कोष्ठक के भीतर संलग्न होते हैं। यहाँ Python में सेट का एक उदाहरण है जो पिज्जा की सूची संग्रहीत करता है:

pizzas = ('Margherita', 'Hawaiian', 'Mushroom', 'Meat Feast')

सेट का उपयोग करके डुप्लिकेट हटाएं उदाहरण

आइए ऊपर से अपने उदाहरण को लें ताकि यह दिखाया जा सके कि सेट्स का उपयोग सूची से डुप्लिकेट मान हटाने के लिए कैसे किया जा सकता है।

मान लीजिए हम एक पिज्जा शेफ हैं जो अपने पुराने और नए दोनों मेनू को मिलाना चाहते हैं। लेकिन इन मेनू के बीच डुप्लिकेट हो सकते हैं, जिन्हें हम अपने अंतिम मेनू बनाने से पहले हटाना चाहेंगे। सेट दृष्टिकोण का उपयोग करके इन डुप्लिकेट को हटाने के लिए, हम निम्न कोड का उपयोग कर सकते हैं:

new_menu = ['Hawaiian', 'Margherita', 'Mushroom', 'Prosciutto', 'Meat Feast', 'Hawaiian', 'Bacon', 'Black Olive Special', 'Sausage', 'Sausage']
final_new_menu = list(set(new_menu))
print(final_new_menu)

डुप्लिकेट मान हटाने के बाद हमारी सूची यहाँ है:

['Mushroom', 'Black Olive Special', 'Meat Feast', 'Bacon', 'Margherita', 'Sausage', 'Prosciutto', 'Hawaiian']

हमारे प्रोग्राम की शुरुआत में, हम new_menu नामक एक सूची घोषित करते हैं जो नए मेनू के सभी पिज्जा को संग्रहीत करती है।

फिर, हम final_new_menu नामक एक वेरिएबल घोषित करते हैं जो हमारे संशोधित मेनू को संग्रहीत करता है। यह वेरिएबल new_menu वेरिएबल को set() का उपयोग करके सेट में बदलता है, फिर list() का उपयोग करके सेट को वापस सूची में बदलता है। यह प्रक्रिया हमारे new_menu वेरिएबल में सभी डुप्लिकेट मानों को हटा देती है।

अंत में, हमारा प्रोग्राम नए मेनू को कंसोल पर प्रिंट करता है। मूल सूची ऑब्जेक्ट के सभी अद्वितीय तत्व दिखाई देते हैं। अब हमारे पास एक अद्वितीय सूची है।

निष्कर्ष

सूची से डुप्लिकेट आइटम हटाना Python में एक सामान्य ऑपरेशन है। ऐसी कोई आधिकारिक विधि नहीं है जिसका उपयोग सूची से डुप्लिकेट हटाने के लिए किया जाना चाहिए। सबसे आम दृष्टिकोण डिक्शनरी fromkeys() फ़ंक्शन का उपयोग करना या अपने डेटा को सेट में बदलना है।

इस गाइड में, हमने चर्चा की कि Python में सूची से डुप्लिकेट हटाने के लिए डिक्शनरी fromkeys() फ़ंक्शन और सेट्स का उपयोग कैसे करें।

Python प्रोग्रामिंग के बारे में अधिक जानने के लिए, हमारा How to Learn Python गाइड पढ़ें।

  1. Android में सॉर्टेड लिंक्ड लिस्ट से डुप्लिकेट कैसे हटाएं? Android में सॉर्टेड लिंक्ड लिस्ट से डुप्लिकेट कैसे हटाएं?

    Android में सॉर्टेड लिंक्ड लिस्ट से डुप्लिकेट हटाना यह उदाहरण दर्शाता है कि Android में सॉर्टेड लिंक्ड लिस्ट से डुप्लिकेट मान कैसे हटाए जाते हैं। चरण 1: नया प्रोजेक्ट बनाएं Android Studio में File → New Project पर जाएं और आवश्यक विवरण भरकर एक नया प्रोजेक्ट बनाएं। चरण 2: लेआउट XML में कोड जोड़ें re

  1. Python में Label से Text कैसे Remove करें? Python में Label से Text कैसे Remove करें?

    Tkinter GUI-based applications बनाने और develop करने के लिए एक Python library है। इस लेख में, हम देखेंगे कि कुछ text वाले Label से text कैसे remove करें। Label से text remove करने के लिए, हम एक associated button बनाएंगे जो Label के लिए trigger के रूप में कार्य करेगा। उदाहरण # Import Tkinter Library

  1. - आसान Java: ArrayList से डुप्लिकेट आइटम्स हटाएं

    यह पोस्ट उदाहरण प्रदान करती है, जिसमें दिखाया गया है कि Java में ArrayList से डुप्लिकेट आइटम्स कैसे हटाएं। ArrayList से डुप्लिकेट स्ट्रिंग्स हटाएं चूंकि Set डुप्लिकेट तत्वों को धारण नहीं कर सकता, हम ArrayList को पैरामीटर के रूप में पास करके डुप्लिकेट्स के साथ एक Set ऑब्जेक्ट इंस्टेंशिएट कर सकते हैं