是否存在range
的无界限版本(或Python 2的xrange
),还是需要手动定义它?例如
squares = (x*x for x in range(n))
只能为(n-1)**2
之前的广场提供一个生成器,我看不到任何明显的方式来调用range(infinity)
以便它只是继续卡车'。
答案 0 :(得分:51)
您正在描述itertools.count
的基本用法:
import itertools
squares = (x*x for x in itertools.count())