“Python/gloss python iterator stop”的版本间差异
来自菜鸟教程
小 (Pywikibot 4.4.0.dev0) |
小 (机器人:添加分类Python基础教程) |
||
第61行: | 第61行: | ||
</div> | </div> | ||
<br /> | <br /> | ||
+ | |||
+ | [[分类:Python基础教程]] |
2020年10月29日 (四) 08:48的最新版本
<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)