Python range() xrange()

 

range 前面小节已经说明了,range([start,] stop[, step]),根据start与stop指定的范围以及step设定的步长,生成一个序列.

xrange用法与 range 完全相同,所不同的是生成的不是一个list对象,而是一个生成器.

xrange做循环的性能比range好,尤其是返回很大的时候。尽量用xrange吧,除非你是要返回一个列表.

Python3.x中移除了range(),保留了xrange并且重命名为range().

 

>>> type(range(1000))
<type 'list'>
>>> type(xrange(1000))
<type 'xrange'>
>>> from sys import getsizeof
>>> print getsizeof(range(1000))
8064
>>> print getsizeof(xrange(1000))
32
>>>
>>> a=xrange(1000)
>>> print a
xrange(1000)
>>> a=range(5)
>>> print a
[0, 1, 2, 3, 4]
>>>

 

posted on 2017-01-03 15:45  大大的橙子  阅读(985)  评论(0编辑  收藏  举报

导航