xrange与range的区别

xrange属于类,继承自object.
用法:
xrange(stop) -> xrange object
xrange(start, stop[, step]) -> xrange object

range属于函数,返回list,而xrange返回xrange object.对于循环而言,稍快于range(),内存效率更高.
#!/usr/bin/python
# -*- coding: UTF-8 -*-
n = 10
for c in xrange(n):
    print c
 format()  格式化输出字符串,format(value, format_spec)实质上是调用了value的__format__(format_spec)方法

"I am {0}, I like {1}!".format("wang", "moon")
‘I am wang, I like moon!‘

原文地址:https://www.cnblogs.com/guxuanqing/p/9404511.html

时间: 2024-10-08 08:37:23

xrange与range的区别的相关文章

python中xrange和range的区别

这两个基本上都是在循环的时候用. for i in range(0, 100): print i for i in xrange(0, 100): print i 这两个输出的结果都是一样的,实际上有很多不同,range会直接生成一个list对象: a = range(0,100) print type(a) print a #[0,1,2...] print a[0], a[1] 而xrange则不会直接生成一个list,而是每次调用返回其中的一个值 a = xrange(0,100) pri

Python细说 xrange 和 range 的区别

Python版本2.X: range的返回值是list,这意味着内存将会分布相应的长度的空间给list. xrange的返回值是一个生成器,有利于节省内存空间. Python版本3.X: 在3.X版本中,Python对range函数做了优化,并且取消了xrange函数. 3.X版本中,range函数返回的是一个range对象,如下. 1 >>> print(sys.version) 2 3.5.3 (v3.5.3:1880cb95a742, Jan 16 2017, 16:02:32)

xrange() 与 range() 的对比与总结

一,两个函数的文档: 1,xrange(): xrange(stop) xrange(start, stop[, step]) This function is very similar to range(), but returns an xrange object instead of a list. This is an opaque sequence type which yields the same values as the corresponding list, without

python中xrange()和range()函数的区别使用:

1.range()函数: 函数说明:range([start,] stop[, step]),根据start与stop指定的范围以及step设定的步长,生成一个序列. >>> #range()函数不支持0参数 ... >>> range() Traceback (most recent call last): File "<stdin>", line 1, in <module> TypeError: range expect

python中xrange和range(转)

说到序列,我们第一想到的是一组有序元素组成的集合.同时,每个元素都有唯一的下标作为索引. 在Python中,有许多内界的序列.包括元组tuple,列表list,字符串str等.上面提到的序列类型(list,tuple,str)有一个共同的特点,就是当序列对象创建时,需要开辟专门的内存空间,保存序列中的所有元素.换句话说,这些序列对象本质上,是一个集合. 例如,下面代码创建了一个序列对象s.在该对象序列创建时,需要开辟内存空间将序列中的3个元素(整数1,2,3)保存下来. s=[1,2,3] 然而

python中xrange和range的异同

range    函数说明:range([start,] stop[, step]),根据start与stop指定的范围以及step设定的步长,生成一个序列(列表). >>> range(5) [0, 1, 2, 3, 4] >>> range(1,5) [1, 2, 3, 4] >>> range(0,6,2) [0, 2, 4] xrange    函数说明:用法与range完全相同,所不同的是生成的不是一个数组,而是一个生成器.xrange示例:

1.xrange和range不要混了,2.range(len(xx))不如用enumerate

range()是列表, xrange()是迭代 >>> a = ['Mary', 'had', 'a', 'little', 'lamb'] >>> for i in range(len(a)): ... print i, a[i] ... 0 Mary 1 had 2 a 3 little 4 lamb 然而,在大部分情况下使用enumerate()函数会更加方便,请参见循环的技巧.

python中enumerate、xrange、range

enumerate可以给列表自动生成一列,默认从0开始,自动增长1,可以指定默认开始值 list_product = ["thinkpad","macbook","iphone8","robbit"] for key,v in enumerate(list_product,1): print(key,v) range 2.7中的用来获取指定范围内的数1.range(0,1000000),内存中一次创建所有的数据2.xrange

range()和xrange()的区别

今天写一下关于xrange()和range()的区别. 首先我们看一段代码: class Ce_shi(): def __init__(self,start,end): self.start = start self.end = end def __len__(self): return self.end - self.start def __getitem__(self,index): if index < 0 and index > -(self.end): return self.end