好得很程序员自学网

<tfoot draggable='sEl'></tfoot>

python基础--range

range() 函数可创建一个可迭代对象,一般用在 for 循环中。

Python3 range() 函数返回的是一个可迭代对象(类型是对象),而不是列表类型, 所以打印的时候不会打印列表。

Python3 list() 函数是对象迭代器,可以把range()返回的可迭代对象转为一个列表,返回的变量类型为列表。

Python2 range() 函数返回的是列表。

 

range(start,end,step) 开始值,结束值,步长(开始值和结束值为左开右闭)

range(stop) range(start, stop[, step])
start: 计数从 start 开始。默认是从 0 开始。例如range(5)等价于range(0, 5); stop: 计数到 stop 结束,但不包括 stop。例如:range(0, 5) 是[0, 1, 2, 3, 4]没有5 step:步长,默认为1。例如:range(0, 5) 等价于 range(0, 5, 1)

 

py3:range(10),每次你遍历的时候,动态的生成数据

 
 
>>> range(10)
range(0, 10)  #在内存里生成了一个类对象,并不是具体的实例,可以节省内存

>>> list(range(10))  #list函数把range返回的可迭代对象转化为一个列表 [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]

  #开始值不写默认从0开始;结束值为闭区间,所以取不到10;步长不写默认是1,示例:
>>> for i in range(10):   
...     print(i)
...
0
1
2
3
4
5
6
7
8
9

#开始值,结束值和步长都写,示例:
>>> for i in range(1,20,3):
...     print(i)
...
1
4
7
10
13
16
19
>>>

 

py2:range(10),直接生成所有数据

>>>range(10)        # 已经把10个数放到内存里了
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]

查看更多关于python基础--range的详细内容...

  阅读:29次