前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Python的range和xrange的区别

Python的range和xrange的区别

原创
作者头像
用户8077380
发布2024-03-16 00:36:59
770
发布2024-03-16 00:36:59

for i in range(1, 5): print(i)

# i 返回1,2,3,4

for i in xrange(1, 5):

#返回同上

Python 2.x中:

xrange用法与range完全相同,所不同的是range生成的是一个list,内存将会分布相应的长度的空间给list。而xrange生成的是一个生成器。要生成很大的数字序列的时候,用xrange会比range性能优很多,因为不需要一开始就开辟一块很大的内存空间

Python 3.x中:

取消了xrange, Python3中返回的是一个range对象(class),并没有将数据完全实例化,所以内存中只有一个对象的空间。

range用法详细说明:

代码语言:javascript
复制
>>>range(10)        # 从 0 开始到 10
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
>>> range(1, 11)     # 从 1 开始到 11
[1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
>>> range(0, 30, 5)  # 步长为 5
[0, 5, 10, 15, 20, 25]
>>> range(0, 10, 3)  # 步长为 3
[0, 3, 6, 9]
>>> range(0, -10, -1) # 负数
[0, -1, -2, -3, -4, -5, -6, -7, -8, -9]
>>> range(0)
[]
>>> range(1, 0)
[]

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档