美文网首页
怎么理解Python的迭代器、生成器和迭代对象

怎么理解Python的迭代器、生成器和迭代对象

作者: Wendy_Leo | 来源:发表于2018-09-04 15:31 被阅读0次
    1. 概念理解

    迭代是Python语言的强大功能之一,主要用来对集合元素进行访问。

    • 可迭代对象(iterable)
      • 实现了iter()方法,该方法返回一个迭代器对象
      • 只是一种叫法,不是Python的数据类型
      • 序列(list/tuple/str)都是可迭代的对象
      • 容器(dic/set)也是可迭代对象
    • 迭代器(iterabor)
      • 任何实现了iternext方法的对象都是可迭代器
      • 迭代器不会一次性加载所有的元素,而是需要的时候生成
    • 生成器(generator)
      • 特殊的迭代器
      • 不用实现iternext方法
      • 使用yield而不是return
      • 返回一个迭代器
    2. 创建迭代器
    • 使用内置函数iter()
    • 使用yield
    • 使用itertools模块
      • 产生不同类型的迭代器
      • 函数或类
    3. 迭代器的特点
    • 惰性取值:比较适合读取大文件和无线集合

    相关文章

      网友评论

          本文标题:怎么理解Python的迭代器、生成器和迭代对象

          本文链接:https://www.haomeiwen.com/subject/nfkgwftx.html