前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Python Python中的迭代器

Python Python中的迭代器

作者头像
Zkeq
发布2022-05-18 14:53:59
9340
发布2022-05-18 14:53:59
举报
文章被收录于专栏:Zkeq

Python中的迭代器

什么是迭代器
  • 同步进行(不需要等待所有数据都写入内存即可使用)
如何生成迭代器 - iter
介绍
  • 生成一个迭代对象
用法
  • iter(iterable)
参数介绍
  • iterable : 可迭代的数据类型
迭代器的用法 - next
介绍
  • 返回迭代器中的数据
用法
  • next(iterator)
参数介绍
  • iterator: 迭代器对象
迭代器常用方法之生成迭代器
  • for循环生成法—yield
  • for循环一行生成迭代器
迭代器常用方法之for循环获取
  • (i for i range(10))
  • 用完再用不会报错.
代码
代码语言:javascript
复制
# coding:utf-8

iter_obj = iter((1, 2, 3))
# print(next(iter_obj))
# print(next(iter_obj))
# print(next(iter_obj))

# print(next(iter_obj))


def _next(iter_obj):
    try:
        return next(iter_obj)
    except StopIteration:
        return None


# print(_next(iter_obj))
# print(_next(iter_obj))
# print(_next(iter_obj))
# print(_next(iter_obj))
# print(_next(iter_obj))

def make_iter():
    for i in range(10):
        yield i


iter_obj = make_iter()
# print(type(iter_obj))

for i in iter_obj:
    print(i)
print('--------')
for i in iter_obj:
    print(i)  # 执行后程序会空 , 拿不到数据

iter_obj = (i for i in range(10))

for i in iter_obj:
    print(i)
print('========')
for i in iter_obj:
    print(i)
    
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2021-11-12,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • Python中的迭代器
    • 什么是迭代器
      • 如何生成迭代器 - iter
        • 介绍
        • 用法
        • 参数介绍
      • 迭代器的用法 - next
        • 介绍
        • 用法
        • 参数介绍
      • 迭代器常用方法之生成迭代器
        • 迭代器常用方法之for循环获取
          • 代码
          领券
          问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档