Python interrompe l'iterazione
Interrompi l'iterazione
Per evitare che l'iterazione continui per sempre, possiamo usare l'
StopIteration
istruzione.
Nel __next__()
metodo, possiamo aggiungere una condizione di terminazione per generare un errore se l'iterazione viene eseguita un numero specificato di volte:
Esempio
Interrompi dopo 20 iterazioni:
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)