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] >>>