Python -Stopp-Iteration
StopIteration
Um zu verhindern, dass die Iteration ewig weitergeht, können wir die
StopIteration
Anweisung verwenden.
In der __next__()
Methode können wir eine Beendigungsbedingung hinzufügen, um einen Fehler auszulösen, wenn die Iteration eine bestimmte Anzahl von Malen durchgeführt wird:
Beispiel
Stopp nach 20 Iterationen:
class MyNumbers:
def __iter__(self):
self.a =
1
return self
def __next__(self):
if self.a <= 20:
x = self.a
self.a += 1
return x
else:
raise StopIteration
myclass =
MyNumbers()
myiter = iter(myclass)
for x in myiter:
print(x)