Types d`itérateurs Python : iter, suivant

| | | | | | | | | | | | |

Python a des concepts itératifs sur les conteneurs. Les itérateurs ont deux fonctions différentes. En utilisant ces fonctions, nous pouvons utiliser des classes personnalisées pour prendre en charge l`itération. Ces fonctions sont __iter __ () et __next __ ().

iter

La méthode __iter __ () renvoie un objet itérateur. Si une classe prend en charge différents types d`itération, d`autres méthodes peuvent être utilisées pour accomplir d`autres tâches.




suivant

Le La méthode __next __ () renvoie l`élément suivant du conteneur. Lorsque l`élément est terminé, il déclenche une exception StopIteration.



Exemple de code

 class PowerIter : #Il retournera x ^ x où x est compris entre 1 et max def __init __ (self, max = 0): self.max = max #Définir la limite maximale de l`itérateur def __iter __ (self): self.term = 0 return self def __next __ (auto): si self.term "= self.max: element = self.term ** self.term self.term + = 1 return element else: raise StopIteration #Lorsqu`il dépasse le max, renvoie une exception powIterObj = PowerIter (10) po wIter = iter (powIterObj) for i in range (10): print (next (powIter)) 

Sortie

 1 1 4 27 256 3125 46656 823543 16777216 387420489