首页 > 技术文章 > python迭代器

dcotorbool 2017-12-31 16:55 原文

python迭代器

迭代器

迭代器是一个实现了迭代器协议的容器对象。基于两种方法 next:返回容器的下一个元素 iter:返回迭代器本身

i=iter('abc')  
next(i)
next(i)

当遍历完序列时,会引发一个StopIteration异常。这样迭代器就可以与循环兼容,因为可以捕获这个异常并停止循环。 自定义一个可以迭代的类,只需要提供可以返回自身的iter特殊方法

class CountDown:
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 element in CountDown(4):
print(element)

推荐阅读