您的位置:首页 > 编程语言 > Python开发

Python3 自定义迭代器

2013-11-21 23:18 253 查看
1、迭代器基于下面两个个方法:

(1)__next__ 返回容器的下一个项目

(2)__iter__ 返回迭代器本身

2、当序列遍历完时,将抛出StopIteration异常,所以通过捕获这个异常来停止循环

下面是自定义迭代器的示例代码:

#encoding:UTF-8
class MyIterator(object):
def __init__(self,step):
self.step=step

def __next__(self):
if self.step==0:
raise StopIteration
self.step-=1
return self.step

def __iter__(self):
return self

for i in MyIterator(6):
print(i)
输出结果:
>>> ================================ RESTART ================================
>>>
5
4
3
2
1
0
>>>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: