博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

python学习之range()和xrange()

Posted on 2017-10-10 12:49  开飞机的贝塔  阅读(228)  评论(0编辑  收藏  举报

在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