码迷,mamicode.com
首页 > 其他好文 > 详细

range与xrange的区别

时间:2018-07-22 19:25:24      阅读:144      评论:0      收藏:0      [点我收藏+]

标签:tar   相同   nbsp   style   性能   start   列表   star   很多   

一、Python中range()与xrange()有什么区别

 range([start,] stop[, step]),根据start与stop指定的范围以及step设定的步长,生成一个序列

range(6)
#[0, 1, 2, 3, 4, 5]

range(1,6)
#[1, 2, 3, 4, 5]

range(1,6,2)
#[1, 3, 5]
#也就是说range()返回的是个列表

 

 xrange用法与 range 完全相同,所不同的是生成的不是一个list对象,而是一个生成器

xrange(6)
#xrange(6)
list(xrange(6))
#[0, 1, 2, 3, 4, 5]

xrange(1,6)
#xrange(1, 6)
list(xrange(1,6))
#[1, 2, 3, 4, 5]

xrange(1,6,2)
#xrange(1, 7, 2)
list(xrange(1,6,2))
#[1, 3, 5]
#xrange()返回的是个生成器

 

 由上面的示例可以知道:要生成很大的数字序列的时候,用xrange会比range性能优很多,因为不需要一上来就开辟一块很大的内存空间。

 

range与xrange的区别

标签:tar   相同   nbsp   style   性能   start   列表   star   很多   

原文地址:https://www.cnblogs.com/always-fight/p/9351025.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!