Itération d'arrêt Python
ArrêterItération
Pour éviter que l'itération ne se poursuive indéfiniment, nous pouvons utiliser l'
StopIteration
instruction.
Dans la __next__()
méthode, nous pouvons ajouter une condition de terminaison pour générer une erreur si l'itération est effectuée un nombre de fois spécifié :
Exemple
Arrêt après 20 itérations :
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)