美文网首页
python之可迭代对象、迭代器、生成器

python之可迭代对象、迭代器、生成器

作者: octocat | 来源:发表于2018-09-06 10:03 被阅读0次

他们是什么

  • 什么是可迭代对象iterable
    凡是实现了 __iter__ 方法的对象就是可迭代对象。例如 listtuple
  • 什么是迭代器 iterator
    是指自身不仅实现了 __iter__ 方法,同时实现了 __next__方法。且__iter__ 方法返回的是对象本身
  • 什么是生成器 generator
    生成器是一种特殊的迭代器,自动实现了 __iter____next__方法。我们常说的生成器就是带有yield的函数。

他们之间的联系

iterable 包含 iterator 包含 generator
有些iterable对象,比如list,是将所有的值都存储在内存中。而有些就不是,比如 iterator
所有的 iterable 都是可以用for循环来取的其中的值的。for循环的工作原理就是先通过调用 iter方法来获取一个iterator,然后通过不停的调用next 方法来取得所有的值的

相关文章

  • Python基础-16生成器-迭代器

    16.生成器-迭代器     可循环迭代的对象称为可迭代对象,迭代器和生成器函数是可迭代对象,在Python中提供...

  • Python中的迭代器和生成器

    今天我们来学习下Python中的迭代器和生成器。 迭代和可迭代对象 在学习迭代器之前,我们需要了解下迭代和可迭代对...

  • 理解迭代器/生成器

    完全理解Python 迭代对象、迭代器、生成器 迭代和生成操作总结 Python迭代器 http://www.ji...

  • Python可迭代对象,迭代器,生成器关系

    列表,元组,字符串,迭代器,生成器都是可迭代对象。所以,可迭代对象不一定是迭代器,生成器。 将一个可迭代对象传递给...

  • Python 入门之 Python三大器 之 迭代器

    Python 入门之 Python三大器 之 迭代器 1、迭代器 (1)可迭代对象: <1> 只要具有__ ite...

  • 迭代器、生成器和协程

    迭代器、生成器和协程 可迭代(Iterable) Python 中任意的对象, 只要定义了可以返回一个迭代器的 _...

  • 迭代器

    可迭代对象(Iterable): for迭代器(Iterator): for + next生成器属于迭代器。 验...

  • 可迭代对象、迭代器、生成器

    可迭代对象 --> 迭代器 --> 生成器; 可迭代对象:实现了__iter__()方法的对象,该方法返回迭代对象...

  • yield and Iterator

    Generator(生成器) 生成器是特殊的迭代器,迭代器不一定是生成器。 生成器与迭代器均是可迭代对象。 目前学...

  • 迭代机制

    可迭代对象、迭代器、生成器、生成式区别 a. 可迭代对象: 一个对象能够被迭代的使用,这个对象就是可迭代对象 b....

网友评论

      本文标题:python之可迭代对象、迭代器、生成器

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