【发布时间】:2019-02-01 13:02:55
【问题描述】:
为了便于讨论,我将基于Python 3.6.1提出以下问题
我从 [Learning Python](第 5 版,第 20 章,第 614 页)一书中读到:
正如我们所见,基本的内置工具,例如范围、地图、字典 密钥,甚至文件现在都是生成器,因此即使您不编写自己的新生成器,您也必须熟悉这个概念。
这是一个错误的陈述吗?
我认为作为迭代器的对象是它成为生成器的必要但非充分条件。也就是说,生成器的迭代器始终是生成器本身。
然而,范围和字典键是可迭代的,但它们不是它们自己的迭代器。如果它们不是迭代器,它们怎么可能是生成器?
【问题讨论】:
标签: python python-3.x iterator generator iterable