range()
函数会生成一个数字序列,从下限到上限。
range(lower_bound, upper_bound, step_size)
lower_bound
:列表的起始值。upper_bound
:列表的最大值,不包括此数字。step_bound
:步长,列表中每个数字之间的差。
lower_bound
和step_size
参数是可选的。默认情况下,下限设置为零,增量步长设置为一。参数必须为整数类型,但可以为负。
解释器中的 python range
函数
范围实现差异
通常是一个问题。 在 Python 版本中,range()
的实现略有不同:
Python 2.x:
range()
函数返回一个列表。Python 3.x:
range()
函数生成一个序列。
python 2.7 中的范围
调用range(5)
将返回:0, 1, 2, 3, 4
。
>>> range(5)
调用range(1, 10)
返回:1,2,3,4,5,6,7,8,9
>>> range(1,10)
调用range(0, 10, 2)
返回:0,2,4,6,8
>>> range(0,10,2)
python 3 中的范围。要使用范围生成列表,请添加列表函数。
>>> list(range(5))
我们可以使用所有参数(下限,上限,步长)
>>> list(range(0,10,2))
[0, 2, 4, 6, 8]
python 2 实现
此版本的range()
分配计算机内存,并在后台填充计算机内存。 对于大范围,这不是很有效的实现。
通常,range
的 Python2 实现不会有任何问题,但如果使用大量(数百万个项目),则可能会遇到问题。