लिस्ट ऑफ लिस्ट्स को फ्लैट करने के अलग-अलग तरीके हैं। सीधा तरीका है दो नेस्टेड लूप चलाना - बाहरी लूप लिस्ट्स की एक सबलिस्ट देता है, और आंतरिक लूप एक समय में सबलिस्ट का एक एलिमेंट देता है। प्रत्येक एलिमेंट को फ्लैट लिस्ट ऑब्जेक्ट में ऐपेंड किया जाता है।
L1=[[1,2],[3,4,5],[6,7,8,9]]
flat=[]
for i in L1:
for j in i:
flat.append(j)
print(flat)
दूसरी विधि एक जेनरेटर फंक्शन का उपयोग करके इटरेटर देना और इसे लिस्ट में बदलना है।
def flatten(list):
for i in list:
for j in i:
yield j
L1=[[1,2,3],[4,5],[6,7,8,9]]
flat=flatten(L1)
print(list(flat))
सबसे कॉम्पैक्ट विधि itertools मॉड्यूल से chain() मेथड का उपयोग करना है।
L1=[[1,2,3],[4,5],[6,7,8,9]] import itertools flat=itertools.chain.from_iterable(L1) print(list(flat))
उपरोक्त सभी कोड एक फ्लैट लिस्ट उत्पन्न करते हैं:
[1, 2, 3, 4, 5, 6, 7, 8, 9]