range(1000)会返回一个长度为1000的数组,
而xrange(1000)会返回一个生成器,在需要的情况下返回一个数字,此时空间的占用情况会大为减少。
所以为了提升性能,在做循环的时候,应该尽可能的使用xrange,除非需要用range返回一个数组。
In [9]: xrange(5)
Out[9]: xrange(5)
In [10]: range(5)
Out[10]: [0, 1, 2, 3, 4]
In [11]: list(xrange(5))
Out[11]: [0, 1, 2, 3, 4]
In [12]: print type(xrange(4))
<type 'xrange'>
In [13]: print type(range(4))
<type 'list'>