सूचियाँ नेस्टेड हो सकती हैं, मतलब एक सूची के तत्व स्वयं सूचियाँ होते हैं। इस लेख में हम देखेंगे कि सूची की सूची से केवल धनात्मक संख्याएं कैसे निकाली जाएं। परिणाम में एक नई सूची होगी जिसमें धनात्मक संख्याओं वाली नेस्टेड सूचियाँ होंगी।
for in के साथ
यहां हम केवल फॉर लूप का उपयोग करके सूची में तत्वों के मान की जांच के लिए गणितीय ऑपरेटर लागू करते हैं। यदि मान धनात्मक है तो हम इसे एक सूची के रूप में कैप्चर करते हैं और बाहरी फॉर लूप इसे सूचियों की अंतिम सूची के रूप में संग्रहीत करता है।
उदाहरण
listA = [[-9, -1, 3], [11, -8, -4, 434, 0]] # दी गई सूची
print("दी गई सूची :\n", listA)
# धनात्मक तत्व ढूंढना
res = [[y for y in x if y > 0] for x in listA]
# परिणाम
print("धनात्मक संख्याओं की सूची :", res)
आउटपुट
उपरोक्त कोड चलाने पर निम्न परिणाम मिलता है -
दी गई सूची : [[-9, -1, 3], [11, -8, -4, 434, 0]] धनात्मक संख्याओं की सूची : [[3], [11, 434]]
append के साथ
append फंक्शन एक कंटेनर में तत्वों को जोड़ते रहने की अनुमति देता है। यहां हम नेस्टेड फॉर लूप डिजाइन करते हैं जिसमें हम तत्व के मान के धनात्मक होने की जांच करते हैं और इसे आंतरिक फॉर लूप में एक सूची में जोड़ते हैं जबकि बाहरी फॉर लूप प्रत्येक आंतरिक सबलिस्ट को कैप्चर करता है।
उदाहरण
listA = [[-9, -1, 3], [11, -8, -4, 434, 0]] # दी गई सूची
print("दी गई सूची :\n", listA)
res = []
# append के साथ
for elem in listA:
temp = []
for i in elem:
if i > 0:
temp.append(i)
res.append(temp)
# परिणाम
print("धनात्मक संख्याओं की सूची :", res)
आउटपुट
उपरोक्त कोड चलाने पर निम्न परिणाम मिलता है -
दी गई सूची : [[-9, -1, 3], [11, -8, -4, 434, 0]] धनात्मक संख्याओं की सूची : [[3], [11, 434]]