Python/gloss python iterator stop
来自菜鸟教程
<languages />
Python停止迭代
StopIteration
为了防止迭代永远进行,我们可以使用
StopIteration
声明。
在里面
__next__()
方法,如果迭代执行了指定的次数,我们可以添加终止条件以引发错误:
例
在20次迭代后停止:
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)