码迷,mamicode.com
首页 > 编程语言 > 详细

17 python 初学(迭代器)

时间:2019-01-13 19:10:16      阅读:150      评论:0      收藏:0      [点我收藏+]

标签:com   ble   调用   cal   top   mil   www   .com   生成   

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

迭代器满足两个条件: 1. iter方法 2. next方法

技术分享图片
# list, tuple, dict, string: iterable(他们都有iter方法,所以都是可迭代对象)
# 调用 iter 方法返回的 d 就是一个迭代器
# l = [1, 2, 3, 4, 5]
l = {name: lily, age: 18}
d = iter(l)  # 通过 iter 直接返回一个可迭代对象
print(d)   # <list_iterator object at 0x0000001EA3547518>

print(next(d))   # name
print(next(d))   #age
View Code

 

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

for 循环内部完成三件事:

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

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

    3. 处理 StopIteration

 

更多参考:http://www.cnblogs.com/yuanchenqi/articles/5769491.html

17 python 初学(迭代器)

标签:com   ble   调用   cal   top   mil   www   .com   生成   

原文地址:https://www.cnblogs.com/mlllily/p/10263509.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!