首页 > 其他 > 详细

迭代器

时间:2017-11-07 14:03:50      阅读:280      评论:0      收藏:0      [点我收藏+]

生成器都是迭代器,迭代器不一定是生成器

list,tuple,dict,string:Iterable(可迭代对象)

 

l  = [1,2,3,4]

d = iter(l)      # l.__iter__()

print(d)         #<list_iterator object at 0x0000000000687B38>

 

print(next(d))

print(next(d))

print(next(d))

print(next(d))

print(next(d))    #StopIteration

 

什么是迭代器?

满足两个条件:1 有iter方法  2 有next方法

 

for 循环内部三件事

1 调用可迭代对象的iteration方法返回一个迭代器对象

2 不断调用迭代器对象的next方法

3 处理StopIteration

for i in [1,2,3,4]:

  iter([1,2,3,4])

 

迭代器

原文:http://www.cnblogs.com/y-m-f/p/7798553.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!