[学习Python]这本书上说range是一个生成器- - 这是谣言吗?

The book [Learning Python] claimed that range is a generator- - Is this a false statement?

为了讨论方便,我会根据Python3.6.1

提出以下问题

我从[学习Python]一书(第5版,第20章,第614页)中了解到:

As we’ve seen, fundamental built-in tools such as range, map, dictionary keys, and even files are now generators, so you must be familiar with the concept even if you don’t write new generators of your own.

这是虚假陈述吗?

我认为对象是迭代器是生成器的必要但非充分条件。也就是说,生成器的迭代器始终是生成器本身。

然而,范围和字典键是可迭代的,但它们不是它们自己的迭代器。不是迭代器怎么可能是生成器?

有时人们使用 "generator" 来表示任何惰性可迭代对象,即使这不是准确的定义。在 Python 3 中,range 是一个惰性可迭代对象。