python: range & xrange 探究
2017-09-07 16:46
288 查看
Syntax
range ( [start,] stop [, step] )xrange ( [start,] stop [, step] )
Summary
xrange 和 range 这两个基本上都是在循环的时候用。xrange 用法与 range 完全相同,所不同的是生成的不是一个list对象,而是一个生成器。
生成很大的数字序列的时候,用 xrange 会比 range 性能优很多,因为不需要一上来就开辟一块很大的内存空间。所以尽量用 xrange 。
在python2与python3中的区别
xrange 在 python3 中被弃用,仅保留 range 。然而感觉 python3 中的 range 设计成了 python2 中的 xrange 。# Under python2 print(range(0, 5), type(range(0, 5))) # [0, 1, 2, 3, 4], <type 'list'> print(list(range(0, 5)), type(list(range(0, 5)))) # [0, 1, 2, 3, 4] <class 'list'>
# Under python3 print(range(0, 5), type(range(0, 5))) # range(0, 5) <class 'range'> print(list(range(0, 5)), type(list(range(0, 5)))) # [0, 1, 2, 3, 4] <class 'list'>
Test
>>> a = range(10) >>> type(a) <type 'list'> >>> a [0, 1, 2, 3, 4, 5, 6, 7, 8, 9] >>> a[5] 5
>>> b = xrange(10) >>> type(b) <type 'xrange'> >>> b xrange(10) >>> b[5] 5
相关文章推荐
- python range & xrange
- python range和xrange
- Python中 range 和xrange的详细区别
- python中range()、xrange()和np.arange()区别
- python中xrange和range的异同
- python中range()和xrange()的区别
- Python range和xrange
- python中xrange和range的区别
- python中xrange和range的异同
- Python 的range和xrange
- python中xrange和range的异同
- python中xrange和range的异同
- ·python·用生成器和迭代器实现自己的xrange
- 浅谈Python中range和xrange的区别
- python中xrange和range的异同
- python中xrange和range的异同
- ZH奶酪:Python中range和xrange的区别
- Python中range和xrange的异同之处
- python中xrange和range的异同
- python中range, xrange, arange的区别与应用示例