python 生成器与迭代器

迭代器

迭代器是一个可以记住遍历的位置的对象

方法 作用
iter() 创建迭代器
next() 取出迭代器的下一个元素
weeks = ('MON', 'TUE', 'WED', 'THU', 'FRI', 'SAT', 'MON')
# 创建迭代器
it = iter(weeks)
while True:
    try:
        # 遍历迭代器
        print(next(it))
    except:
        break

执行输出如下:

MON
TUE
WED
THU
FRI
SAT
MON

生成器

使用了 yield 的函数被称为生成器(generator),他返回一个迭代器


# 创建 生成器函娄--生成1-10的数字
def autoIncrement():
    i = 0
    while i < 10:
        i = i + 1
        yield i


if __name__ == '__main__':
    it = autoIncrement()
    while True:
        try:
            # 遍历迭代器
            print(next(it))
        except:
            break

执行以上代码输出:

1
2
3
4
5
6
7
8
9
10
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容