Python এ যেভাবে generator ব্যবহার করবেন

RONiB

আজকে আমরা পাইথনে 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 loopgenerator ব্যবহার করতে পারি

output:

কেন generator ব্যবহার করা হয়?

যদি কোনো নির্দিষ্ট প্রকিয়ায় তৈরি কোনো ডাটা প্রয়োজনের ভিত্তিতে তৈরি করার প্রয়োজন হয় তখন generator ব্যবহার করা হয়।এতে করে মেমোরি সেভ হয়।এছাড়া ডাটা স্ট্রিম করার কাজেও generator ব্যবহৃত হয়।

 

আজ এ পর্যন্তই

 

Full Code (Pastebin)

 

Join: Telegram – @techztricks

 

 

 

The post Python এ যেভাবে generator ব্যবহার করবেন appeared first on Trickbd.com.



from
https://trickbd.com/python-programming/3057760

Getting Info...

إرسال تعليق

Cookie Consent
We serve cookies on this site to analyze traffic, remember your preferences, and optimize your experience.
Oops!
It seems there is something wrong with your internet connection. Please connect to the internet and start browsing again.
AdBlock Detected!
We have detected that you are using adblocking plugin in your browser.
The revenue we earn by the advertisements is used to manage this website, we request you to whitelist our website in your adblocking plugin.