python2.7中有xrange函数和range函数
python3中把range优化了,合并了xrange和range函数
用range函数就行
参考链接:https://www.cnblogs.com/blogofwyl/p/4317913.html
range函返回一个数组,而xrange函数返回一个生成器。
两个函数都不支持0参数。
>>> range(10)
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
>>> range(1,20)
[1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19]
>>> #带步长的range()函数
>>> range(1,20,2)
[1, 3, 5, 7, 9, 11, 13, 15, 17, 19]
>>> xrange(10)
xrange(10)
>>> list(xrange(10))
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
>>> xrange(1,10)
xrange(1, 10)
>>> list(xrange(1,10))
[1, 2, 3, 4, 5, 6, 7, 8, 9]
>>> xrange(1,20,2)
xrange(1, 21, 2)
>>> list(xrange(1,21,2))
[1, 3, 5, 7, 9, 11, 13, 15, 17, 19]
要生成很大的数字序列的时候,用xrange会比range性能优很多,因为不需要一上来就开辟一块很大的内存空间。
在循环中用法是一样的。
网友评论