www.jbmf.net > python rAngE xrAngE

python rAngE xrAngE

1、range多用作循环,range(0,10)返回一个range对象,如想返回一个list,前面加上list转换;2、arange是numpy模块中的函数,使用前需要先导入此模块,arange(3):返回array类型对象.【注:range()中的步长不能为小数,但是np.arange()中的步长可以为小数】3、xrange()也是用作循环,只是xrang(0,10)不返回list,返回xrange对象.每次调用返回其中的一个值. 返回很大的数的时候或者频繁的需要break时候,xrange性能更好.【注意:python3.x中把xrange()取消了】

这两个基本上都是在循环的时候用.[python] view plaincopy In [1]: for i in range(0,10): : print i : 0 1 2 3 4 5 6 7 8 9 In [2]: for i in xrange(0,10): print i : 0 1 2 3 4 5 6 7 8 9 这两个输出的结果都是一样的,实际上有很多不同,range会直

range 前面小节已经说明了,range([start,] stop[, step]),根据start与stop指定的范围以及step设定的步长,生成一个序列.比如:1 >>> range(5) 2 [0, 1, 2, 3, 4] 3 >>> range(1,5) 4 [1, 2, 3, 4] 5 >>> range(0,6,2) 6 [0, 2, 4] xrange 用法与 range 完全相

两基本都循环候用 [python] view plaincopy In [1]: for i in range(0,10): : print i : 0 1 2 3 4 5 6 7 8 9 In [2]: for i in xrange(0,10): print i : 0 1 2 3 4 5 6 7 8 9 两输结都实际同range直接list象: xrange则直接list每调用返其值【xrange返器】 [python]

range range([start,] stop[, step]),根据start与stop指定的范围以及step设定的步长,生成一个序列.xrange 用法与 range 完全相同,所不同的是生成的不是一个list对象,而是一个生成器.由上面的示例可以知道:要生成很大的数字序列的时候,

range返回的是一个包含所有元素的列表,xrange返回的是一个生成器,生成器是一个可迭代对象,在对生成器进行迭代时,元素是逐个被创建的.一般来看,在对大序列进行迭代的时候,因为xrange的特性,所以它会比较节约内存.我们来仔

Python2 中range()生成的是一个list而xrange()则生成一个generator,两者区别比较大,比如说 for i in range(999999999999999999999999999999999999999999999999999999999): print i内存就直接爆掉,而使用xrange则不会出问题,因为xrange是每次循环,i通过表达式推出,并不会把整张列表直接生成 Python3中去掉xrange()功能由range()代替

In [1]: print type(xrange(10))<type 'xrange'>In [2]: print type(range(10))<type 'list'>xrange返回的是生成器,range返回的是列表,生成器更省内存,列表遍历速度快,各有优势吧. 如果解决了您的问题请采纳!如果未解决请继续追问

1. 首先这两个基本上都是在循环的时候用.这两个输出的结果都是一样的,实际上有很多不同,range会直接生成一个list对象:而xrange则不会直接生成一个list,而是每次调用返回其中的一个值【xrange返回的是一个生成器】.所以xrange做循环的性能比range好,尤其是返回很大的时候!尽量用xrange吧,除非你是要返回一个列表.2. 其次python3中已经用xrange替换了range,所以在2切换到3中需要注意,另外,值得一提的是xrange不支持切片

range返回的是一个包含所有元素的列表,xrange返回的是一个生成器,生成器是一个可迭代对象,在对生成器进行迭代时,元素是逐个被创建的.一般来看,在对大序列进行迭代的时候,因为xrange的特性,所以它会比较节约内存.我们来仔

网站地图

All rights reserved Powered by www.jbmf.net

copyright ©right 2010-2021。
www.jbmf.net内容来自网络,如有侵犯请联系客服。zhit325@qq.com