কম্পিউটার টিউটোরিয়াল

পাইথন ইটারেটর টাইপস (Iterator Types)


পাইথনে কন্টেইনারগুলোর ওপর ইটারেশন (iteration) কনসেপ্ট রয়েছে। ইটারেটরের দুটি ভিন্ন ফাংশন রয়েছে। এই ফাংশনগুলো ব্যবহার করে ইউজার-ডিফাইনড ক্লাসে ইটারেশন সাপোর্ট যোগ করা যায়। এই ফাংশনগুলো হলো __iter__() এবং __next__()।

__iter__() মেথড

__iter__() মেথড ইটারেটর অবজেক্ট রিটার্ন করে। যদি একটি ক্লাস বিভিন্ন ধরনের ইটারেশন সাপোর্ট করে, তবে অন্যান্য কাজের জন্য আরও মেথড থাকতে পারে।

__next__() মেথড

__next__() মেথড কন্টেইনার থেকে পরবর্তী এলিমেন্ট রিটার্ন করে। যখন আইটেম শেষ হয়ে যায়, তখন এটি StopIteration এক্সসেপশন উত্থাপন করে।

উদাহরণ কোড

 class PowerIter: # এটি x ^ x রিটার্ন করবে যেখানে x range 1 to max-এ আছে def __init__(self, max = 0): self.max = max # ইটারেটরের ম্যাক্স লিমিট সেট def __iter__(self): self.term = 0 return self def __next__(self): if self.term <= self.max: element = self.term ** self.term self.term += 1 return element else: raise StopIteration # max অতিক্রম করলে এক্সসেপশন রিটার্ন powIterObj = PowerIter(10) powIter = iter(powIterObj) for i in range(10): print(next(powIter)) 

আউটপুট

 1 1 4 27 256 3125 46656 823543 16777216 387420489 

  1. পাইথনে Kivy-তে Checkbox উইজেট ব্যবহার

  2. পাইথন Kivy-তে বাটন একশন (Button Action) - ক্লিক ইভেন্ট হ্যান্ডলিং

  3. পাইথনে ইনহেরিটেন্স (Inheritance)

  4. পাইথনে ইটারেটর ফাংশন (Iterator Function)