পাইথনের লিস্ট কম্প্রিইনসন

আমরা প্রথমেই একটি ফর লুপের কাজ দেখি।
for x in range(10):
print(x)

তাহলে দেখবো এটি ১ হতে ১০ পর্যন্ত এক্সিকিউট হবে। আমরা কিন্তু চাইলে এটাকে দিয়ে লিস্ট বানাতে পারি। কিভাবে?
mylist=[]
for x in range(10):
mylist.append(x)
print(mylist) # [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]


আচ্ছা এখন আমরা যদি আমাদের এই লিস্ট তৈরির প্রক্রিয়া একটু ভিন্নভাবে দেখি।

myList=[x for x in range(10)]

print(myList) # [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]

আসুন আমরা এটা সহজভাবে চিন্তা করি। প্রথমেই myList নামে একটি লিস্টের ভ্যারিএবেল তৈরি করি। তারপর আমি এরভিতর লজিক ইনপুট করি এভাবে যে, for x in range(10)মানে হল x এ ১,১০ পর্যন্ত সব মান এসাইন কর। তাপর সেটিকে x দ্বারা প্রকাশ করি mylist নামক লিস্টের অবজেক্টের ভিতর।

এখন আমি যদি এরকম কোন লিস্ট কে লিস্ট কম্প্রেনইনসনে আনতে চাই।
mylist=[]

for x in range(10):
if x%2 is 0:
mylist.append(x)


print(mylist)

তাহলে কিভাবে আনবো? এবার দেখি আমাদের কোড।

mylist=[x for x in range(10) if x%2 is 0]
print(mylist) # [0, 2, 4, 6, 8]

আমি এখানে mylist নামে লিস্ট তৈরি করে বলেদিয়েছি যে x এর মান ১,১০ পর্যন্ত এক্সিকিউট হবে। এবং তা x%2 is 0 হবে সেগুলো কে আবার x এ এ্যাসাইন করে mylist ভ্যারিএবেলে রাখবো।

 আর এটাং হলো লিস্ট কম্প্রেইনশন। আগামীকে আরো নানান ধরেনের পাইথনে কম্প্রেনইণসন আছে। পরবর্তিতে এগুল নিয়ে কথা বলবো।








Comments