博客
关于我
Iterable与Iterator
阅读量:562 次
发布时间:2019-03-11

本文共 736 字,大约阅读时间需要 2 分钟。

可迭代对象也是称为序列对象,它能够逐个返回其成员项。常见的例子包括列表 list、字符串 str 和元组 tuple 等序列类型,还有部分非序列类型如字典 dict、文件对象以及自定义类如果具备 iter() 方法或实现了 Sequence 语义的 getitem() 方法。这些对象都能作为可迭代对象使用,它们可以用于 for 循环以及其他依赖序列的函数,如 zip() 和 map()。

迭代器是用来表示数据流的对象,它们支持通过 next() 方法逐个返回数据项。当所有数据项耗尽后,调用 next() 会引发 StopIteration 异常。迭代器必须有 iter() 方法,所以迭代器本身也是可迭代对象。

原文中提到的 address 和 img 标签已经移除。优化后的内容如下:

  • 可迭代对象(Iterable)是能够逐个返回其成员项的对象。

    • 这些对象包括所有序列类型(如 list、str 和 tuple)以及一部分非序列类型(如 dict、文件对象)。
    • 它们实现了 iter() 方法或通过 getitem() 传递 Sequence 语义。
    • 可迭代对象可以用于 for 循环和其他依赖序列的操作,如 zip 和 map。
    • 使用 iter() 函数获取迭代器时通常不需要手动处理迭代器对象,for 语句会自动处理。
  • 迭代器(Iterator)是表示数据流的对象。

    • 每次调用 next() 方法可以获取下一个数据项,直到耗尽所有数据项。
    • 无数据项时会抛出 StopIteration 异常。
    • 迭代器同时也是可迭代对象,可以用于大多数依赖序列的场合。
      -Word样,容器对象(如 list)在每次调用 iter() 或用于 for 循环时会生成新的迭代器实例。
  • 转载地址:http://sfivz.baihongyu.com/

    你可能感兴趣的文章
    postman怎么设置cookie共享
    查看>>
    oracle中duplicate column name异常处理
    查看>>
    linux 查看log日志相关命令
    查看>>
    linux 脚本 crontab 定时删除清理日志
    查看>>
    实用的 s t l
    查看>>
    IDEA 2019 安装 mybatis-plus插件
    查看>>
    JSON、JSONObject、JavaBean三者的相互转换
    查看>>
    JS 判断空字符串
    查看>>
    div 实现光标悬停变成手型
    查看>>
    vue项目 npm ERR! missing script: dev
    查看>>
    layer.confirm 无效
    查看>>
    Java 回调机制
    查看>>
    明明获取权限成功,为什么相机还是黑屏?
    查看>>
    Java文件编译运行流程
    查看>>
    springboot统一异常处理
    查看>>
    看完豁然开朗!2021年阿里Java高级面试题及答案,热度飙升!
    查看>>
    缓和曲线01——缓和曲线概论
    查看>>
    疲劳检测代码
    查看>>
    解决libpng error: IDAT: invalid distance too far back问题
    查看>>
    英伟达——相关学习资料
    查看>>