无限范围()
有没有一种不受限制的 range
(或者在Python 2中是 xrange
)的版本,还是说必须自己手动定义?比如说:
squares = (x*x for x in range(n))
这个只能给我生成到 (n-1)**2
的平方数的生成器,我看不出有什么明显的方法可以调用 range(infinity)
,让它一直往下走。
1 个回答
69
你在描述 itertools.count
的基本用法:
import itertools
squares = (x*x for x in itertools.count())