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

पायथन - पहली सूची में डुप्लिकेट बनाए रखते हुए दो सूचियों को संयोजित करें

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

extend का उपयोग करके

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

उदाहरण

# दी गई सूची A
listA = ['A', 'B', 'B', 'X']
# दी गई सूची B
listB = ['B', 'X', 'Z', 'P']

# परिणाम सेट बनाना
res = list(listA)

# सूची B के साथ परिणाम बढ़ाना
res.extend(i for i in listB if i not in res)

# परिणाम प्राप्त करें
print(res)

उपरोक्त कोड चलाने से हमें निम्न परिणाम मिलता है:

आउटपुट

['A', 'B', 'B', 'X', 'Z', 'P']

set का उपयोग करके

हम किसी सूची में मौजूद अद्वितीय तत्वों को प्राप्त करने के लिए set फ़ंक्शन लागू कर सकते हैं। फिर हम इन दो सूचियों के बीच तत्वों का अंतर ढूंढकर केवल दूसरी सूची से अद्वितीय तत्व प्राप्त करते हैं। अंत में हम इस अंतर के परिणाम को पहली सूची में जोड़ते हैं।

उदाहरण

# दी गई पहली सूची
listA = ['A', 'B', 'B', 'X']
# दी गई दूसरी सूची
listB = ['B', 'X', 'Z', 'P']

# सूचियों को अद्वितीय बनाना
listA_uniq = set(listA)
listB_uniq = set(listB)

# सूची B से अद्वितीय तत्व प्राप्त करना
diff_lists = listB_uniq - listA_uniq
res = listA + list(diff_lists)

# परिणाम प्राप्त करें
print(res)

उपरोक्त कोड चलाने से हमें निम्न परिणाम मिलता है:

आउटपुट

['A', 'B', 'B', 'X', 'P', 'Z']

दोनों दृष्टिकोणों का अंतर:

पहलूextend विधिset विधि
क्रम संरक्षितहां (listA का क्रम + listB के नए तत्व)नहीं (set अनऑर्डर्ड है)
listA के डुप्लिकेटसंरक्षितसंरक्षित
listB के डुप्लिकेटहटाए गए (केवल अद्वितीय)हटाए गए (केवल अद्वितीय)
  1. - दो सूचियों के बीच अंतर सूचीबद्ध करने का पायथन प्रोग्राम

    समस्या विवरण इस समस्या में दो सूचियां दी गई हैं। हमारा कार्य दो सूचियों के बीच अंतर प्रदर्शित करना है। पायथन set() विधि प्रदान करता है। हम यहां इस विधि का उपयोग करते हैं। एक सेट बिना डुप्लिकेट तत्वों का एक अनऑर्डर्ड संग्रह है। सेट ऑब्जेक्ट यूनियन, इंटरसेक्शन, डिफरेंस और सिमेट्रिक डिफरेंस जैसे गणितीय

  1. - Python में लिस्ट्स कैसे डिफाइन करें?

    लिस्ट Python में एक सीक्वेंस डेटा टाइप है। यह एलिमेंट्स की कॉमा-सेपरेटेड लिस्ट है, जरूरी नहीं कि एक ही टाइप के हों, स्क्वायर ब्रैकेट्स ([ ]) में शामिल। लिस्ट एक क्रमबद्ध संग्रह है। लिस्ट ऑब्जेक्ट में व्यक्तिगत एलिमेंट को जीरो-बेस्ड इंडेक्स द्वारा एक्सेस किया जा सकता है। उदाहरण list1 = [physics, chem

  1. - Python Lists में महारत: निर्माण, एक्सेस, और हेरफेर

    इस ट्यूटोरियल में हम Python Lists के बारे में सीखेंगे; लिस्ट कैसे बनाएं, आइटम्स एक्सेस करें, आइटम्स हटाएं, लिस्ट डिलीट करें और इसी तरह। Python में, लिस्ट्स को स्क्वायर ब्रैकेट्स [] का उपयोग करके बनाया जाता है और लिस्ट में प्रत्येक आइटम को कॉमा , से अलग किया जाता है। Python लिस्ट्स में कई अलग-अलग प्र