在python2中,xrange()返回一个xrange对象,注意这个对象并不是生成器,也不是迭代器,但是是迭代对象。
而range()则返回列表对象。
>>> range(10)
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
>>> a
xrange(10)
>>> from collections import Iterable
>>> isinstance(a,Iterable)
True
而在python3中,已经没有xrange()了,只有range(),他是一个可迭代对象。
>>> a = range(10)
>>> a
range(0, 10)
>>> isinstance(a,Generator)
False
>>> isinstance(a,Iterator)
False
>>> isinstance(a,Iterable)
True