بايثون إنشاء مكرر
قم بإنشاء مكرر
لإنشاء كائن / فئة كمكرر ، يجب عليك تنفيذ الأساليب
__iter__()
والكائن
__next__()
الخاص بك.
كما تعلمت في فصل Python Classes / Objects ، فإن جميع الفئات لها وظيفة تسمى
__init__()
، والتي تتيح لك القيام ببعض التهيئة عند إنشاء الكائن.
تعمل __iter__()
الطريقة بشكل مشابه ، يمكنك إجراء عمليات (تهيئة وما إلى ذلك) ، ولكن يجب دائمًا إرجاع كائن المكرر نفسه.
تسمح __next__()
لك الطريقة أيضًا بإجراء عمليات ، ويجب أن تعيد العنصر التالي في التسلسل.
مثال
قم بإنشاء مكرر يقوم بإرجاع الأرقام ، بدءًا من 1 ، وسيزيد كل تسلسل بمقدار واحد (بإرجاع 1،2،3،4،5 وما إلى ذلك):
class MyNumbers:
def __iter__(self):
self.a =
1
return self
def __next__(self):
x = self.a
self.a += 1
return x
myclass = MyNumbers()
myiter = iter(myclass)
print(next(myiter))
print(next(myiter))
print(next(myiter))
print(next(myiter))
print(next(myiter))