range和xrange

在python2.7中range()某个区间后,内存会立即创建区间内的所有数值,严重浪费内存,所以就出现了xrange():每次循环的时候生成一个数值

在python3版本中不存在xrange,只有range他的作用等同与2.7版本的xrange,可以说是做了优化

1 for a in range(1,10):
2     print(a)

输出结果:

range和xrange
1
2
3
4
5
6
7
8
9
range和xrange

可以看到列出了数字1-9,因为range的取值方式range(1,10)是从头取值取到末尾的前一位截止,所以取值1-9

我们也可以顺序输出10-1:

1 for a in range(10,0 ,-1):
2     print(a)

输出结果:

range和xrange
10
9
8
7
6
5
4
3
2
1
range和xrange

range中的-1代表着间隔值,因为默认的间隔是1,10+1不在10到1的范围内所以,我们让间隔等于-1就可以了,根据取值方式,我们定义的区间是(10,0)

上一篇:Python xrange 和range的区别


下一篇:Python中range和xrange的区别