পাইথন পাত্রের জন্য কিছু বিমূর্ত বেস ক্লাস আছে। বিভিন্ন বিমূর্ত বেস ক্লাস আছে। এই ক্লাসগুলি হল কন্টেইনার, হ্যাশটেবল, জেনারেটর, সেট, মিউটেবলসেট, প্রতীক্ষিত ইত্যাদি।
এই মডিউলটি ব্যবহার করতে, আমাদের এটি −
ব্যবহার করে আমদানি করা উচিতimport collections.abc
কিছু অ্যাবস্ট্রাক্ট বেস ক্লাস আছে, যেগুলো খুবই উপকারী। এই ক্লাসগুলি বিভিন্ন কন্টেইনার ক্লাস বিকাশ করতে ব্যবহৃত হয়। উদাহরণস্বরূপ আমরা একটি ধারক তৈরি করতে পারি যার সম্পূর্ণ সেট কার্যকারিতা রয়েছে। এটি করতে, আমরা সেট অ্যাবস্ট্রাক্ট বেস ক্লাস ব্যবহার করতে পারি। আমাদের ক্লাসে কিছু পদ্ধতি সরবরাহ করতে হবে। এগুলি হল __contains__(), __iter__() এবং __len__()
উদাহরণ কোড
import collections.abc
class ListSet(collections.abc.Set):
def __init__(self, iterable):
self.elements = lst = list()
for element in iterable:
if element not in lst:
lst.append(element)
def __iter__(self):
return iter(self.elements)
def __contains__(self, value):
return value in self.elements
def __len__(self):
return len(self.elements)
set1 = ListSet('ABCDEF')
set2 = ListSet('DEFGHI')
intersect = set1 & set2
intersect_iter = iter(intersect)
try:
while True:
print(next(intersect_iter))
except:
pass আউটপুট
D E F