ऐसे परिदृश्य होते हैं जब हमें सूची में मानों को दोहराने की आवश्यकता होती है। मानों का यह दोहराव पायथन में निम्नलिखित तरीकों से प्राप्त किया जा सकता है।
नेस्टेड फॉर लूप का उपयोग
यह एक सीधा दृष्टिकोण है जिसमें प्रत्येक तत्व को चुनते हैं, इसके डुप्लिकेट बनाने के लिए आंतरिक फॉर लूप से गुजरते हैं और फिर दोनों को बाहरी फॉर लूप में पास करते हैं।
उदाहरण
# दी गई सूची
listA = ['Mon', 'Tue', 9, 3, 3]
print("दी गई सूची : ", listA)
# प्रत्येक तत्व के लिए दूसरा तत्व जोड़ना
Newlist = [i for i in listA for n in (0, 1)]
# परिणाम
print("डुप्लिकेशन के बाद नई सूची: ", Newlist)
आउटपुट
उपरोक्त कोड चलाने पर निम्न परिणाम मिलता है -
दी गई सूची : ['Mon', 'Tue', 9, 3, 3] डुप्लिकेशन के बाद नई सूची: ['Mon', 'Mon', 'Tue', 'Tue', 9, 9, 3, 3, 3, 3]
itertools का उपयोग
itertools मॉड्यूल इटरेबल्स में डेटा मैनिपुलेशन से संबंधित है। यहां हम chain.from_iterable लागू करते हैं जो...
उदाहरण
import itertools
# दी गई सूची
listA = ['Mon', 'Tue', 9, 3, 3]
print("दी गई सूची : ", listA)
# प्रत्येक तत्व के लिए दूसरा तत्व जोड़ना
Newlist = list(itertools.chain.from_iterable([n, n] for n in listA))
# परिणाम
print("डुप्लिकेशन के बाद नई सूची: ", Newlist)
आउटपुट
उपरोक्त कोड चलाने पर निम्न परिणाम मिलता है -
दी गई सूची : ['Mon', 'Tue', 9, 3, 3] डुप्लिकेशन के बाद नई सूची: ['Mon', 'Mon', 'Tue', 'Tue', 9, 9, 3, 3, 3, 3]
reduce के साथ
reduce फंक्शन एक विशेष फंक्शन लागू करता है जिसे आर्गुमेंट के रूप में इसमें पास किया जाता है, उन सभी सूची तत्वों पर जिन्हें दूसरे आर्गुमेंट के रूप में इसमें पास किया जाता है। हम इसे add फंक्शन के साथ उपयोग करते हैं जो सूची में मौजूद प्रत्येक तत्व का डुप्लिकेट तत्व जोड़ता है।
उदाहरण
from functools import reduce
from operator import add
# दी गई सूची
listA = ['Mon', 'Tue', 9, 3, 3]
print("दी गई सूची : ", listA)
# प्रत्येक तत्व के लिए दूसरा तत्व जोड़ना
Newlist = list(reduce(add, [(i, i) for i in listA]))
# परिणाम
print("डुप्लिकेशन के बाद नई सूची: ", Newlist)
आउटपुट
उपरोक्त कोड चलाने पर निम्न परिणाम मिलता है -
दी गई सूची : ['Mon', 'Tue', 9, 3, 3] डुप्लिकेशन के बाद नई सूची: ['Mon', 'Mon', 'Tue', 'Tue', 9, 9, 3, 3, 3, 3]