লিস্ট অফ লিস্ট ফ্ল্যাটেন করার বিভিন্ন উপায় আছে। সরাসরি পদ্ধতি হলো দুটি নেস্টেড লুপ চালানো - আউটার লুপ লিস্টের একটি সাবলিস্ট দেয়, এবং ইনার লুপ সাবলিস্টের একটি এলিমেন্ট দেয়। প্রতিটি এলিমেন্ট ফ্ল্যাট লিস্ট অবজেক্টে অ্যাপেন্ড করা হয়।
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]