“Python/gloss python iterator create”的版本间差异
来自菜鸟教程
小 (Pywikibot 4.4.0.dev0) |
小 (机器人:添加分类Python基础教程) |
||
第72行: | 第72行: | ||
</div> | </div> | ||
<br /> | <br /> | ||
+ | |||
+ | [[分类:Python基础教程]] |
2020年10月29日 (四) 08:48的最新版本
<languages />
Python创建迭代器
创建一个迭代器
要将对象/类创建为迭代器,必须实现方法
__iter__()
and
__next__()
对你的对象。
正如您在中学到的 Python类/对象
本章中,所有类都有一个称为
__init__()
,可让您在创建对象时进行一些初始化。
The
__iter__()
方法的行为类似,您可以执行操作(初始化等),但必须始终返回迭代器对象本身。
The
__next__()
方法还允许您执行操作,并且必须返回序列中的下一项。
例
创建一个返回数字(从1开始)的迭代器,每个序列将增加一个(返回1,2,3,4,5等):
class MyNumbers: def __iter__(self): self.a = 1 return self def __next__(self): x = self.a self.a += 1 return x myclass = MyNumbers() myiter = iter(myclass) print(next(myiter)) print(next(myiter)) print(next(myiter)) print(next(myiter)) print(next(myiter))