@(python3)
python3 取消了 xrange() 函数,并且和 range() 函数合并为 range()。
python2.7 环境
>>> range(8)
[0, 1, 2, 3, 4, 5, 6, 7]
>>> a = range(8)
>>> print(type(a))
<type 'list'>
>>> b = xrange(8)
>>> type(b)
<type 'xrange'>
>>> [ x for x in b]
[0, 1, 2, 3, 4, 5, 6, 7]
python3 环境
>>> a = range(8)
>>> type(a)
<class 'range'>
>>> [ x for x in a]
[0, 1, 2, 3, 4, 5, 6, 7]
>>> b = xrange(8)
Traceback (most recent call last):
File "" , line 1, in <module>
NameError: name 'xrange' is not defined
当调用 xrange() 的时候,python3 环境提示 xrange 没有被定义。而 range() 函数的类型也发生了变化,在 2.7 里面的时候,是 list 类型,但是在 3.7 里面,range() 函数是range 类型。