Iteración de parada de Python
Detener iteración
Para evitar que la iteración continúe para siempre, podemos usar la
StopIteration
declaración.
En el __next__()
método, podemos agregar una condición de terminación para generar un error si la iteración se realiza una cantidad específica de veces:
Ejemplo
Detener después de 20 iteraciones:
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)