显然xrange更快,但我不知道为什么它更快(到目前为止,除了轶事之外还没有证据表明它更快)或除此之外还有什么不同
for i in range(0, 20): for i in xrange(0, 20):
在Python 2.x中:
range创建一个列表,所以如果你这样做range(1, 10000000),则会在内存中创建一个包含9999999元素的列表。
range
range(1, 10000000)
xrange 是一个延迟计算的序列对象。
xrange
在Python 3中,range它等效于python xrange,并且必须使用来获取列表list(range(...))。
python xrange
list(range(...))