Python Oluştur yineleyici
Yineleyici Oluştur
Yineleyici olarak bir nesne/sınıf oluşturmak için yöntemleri
__iter__()
ve
__next__()
nesnenize uygulamanız gerekir.
Python Sınıfları/Nesneleri bölümünde öğrendiğiniz gibi , tüm sınıfların
__init__()
, nesne oluşturulurken bazı başlatma işlemleri yapmanıza olanak sağlayan adlı bir işlevi vardır.
Yöntem __iter__()
benzer davranır, işlemler yapabilirsiniz (başlatma vb.), ancak her zaman yineleyici nesnenin kendisini döndürmeniz gerekir.
Yöntem __next__()
ayrıca işlem yapmanıza izin verir ve sıradaki bir sonraki öğeyi döndürmesi gerekir.
Örnek
1 ile başlayan sayıları döndüren bir yineleyici oluşturun ve her dizi bir artacaktır (1,2,3,4,5 vb. döndürerek):
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))