আজকে আমরা পাইথনে generator ব্যবহার করা শিখবো।চলুন শুরু করা যাক
Generator কী?
পাইথনে generator হলো এক বিশেষ ধরণের ফাংশন যা প্রয়োজনের ভিত্তিতে তৎক্ষণাৎ তথ্য তৈরি করতে পারে।এটি কিছুটা সাধারণ ফাংশনের মতো হলেও এর ব্যবহার ভিন্নরকম।এটি কোনো একটি ফাংশনে iteration কে pause করে রাখতে পারে এবং প্রয়োজন বলে আবার resume করতে পারে।
কীভাবে generator তৈরি করবেন?
generator তৈরি করা খুবই সহজ।এর জন্য একটি সাধারণ ফাংশন তৈরি করতে হবে শুধুমাত্র return এর যায়গায় yield ব্যবহার করতে হবে।নিচের ছবিতে একটি generator তৈরি করা হলো
এখানে একটি ফাংশনের ভেতর while loop use করা হয়েছে।এখানে যদি return ব্যবহার করা হতো তাহলে ফাংশনটি বন্ধ হয়ে যেতো।তবে yield ব্যবহার করার কারণে ফাংশনটি তার এই স্টেট মেমোরিতে সেভ করে রাখবে এবং প্রয়োজন এ তা পুনরায় ব্যবহার করবে।
Generator ব্যবহার
এবার এই ফাংশনটি call করলেই এটি একটি generator object return করবে।চলুন এটিকে প্রিন্ট করে দেখা যাক
print(gen)
এবার আউটপুট দেখা যাক
এর value পেতে হলে আমাদের next() ফাংশন ব্যবহার করতে হবে
output:
এবার আমরা যদি আবারো print করি তাহলে পরের সংখ্যাটি আসবে
output:
এভাবে ফাংশনটির লুপ যতক্ষণ চলবে ততক্ষণ এটি কাজ করবে,তারপর StopIteration error আসবে
আমরা চাইলে for loop এ generator ব্যবহার করতে পারি
output:
কেন generator ব্যবহার করা হয়?
যদি কোনো নির্দিষ্ট প্রকিয়ায় তৈরি কোনো ডাটা প্রয়োজনের ভিত্তিতে তৈরি করার প্রয়োজন হয় তখন generator ব্যবহার করা হয়।এতে করে মেমোরি সেভ হয়।এছাড়া ডাটা স্ট্রিম করার কাজেও generator ব্যবহৃত হয়।
আজ এ পর্যন্তই
Join: Telegram – @techztricks