本文在Linux操作系统中介绍Python Range(),涉及Python range()语法、Python range(stop)、Python range(start, stop)、Python range(start, stop, step)的基本知识。
简介
Python range类型通过定义range的起点和终点来生成整数序列,它通常与for循环一起使用,以迭代数字序列。
range()在Python 2和3中的工作方式不同。
在Python 2中,有两个函数可让您生成整数序列,range和xrange,这些函数非常相似,主要区别在于range返回一个列表,而xrange返回一个xrange对象。
在Python 3中,已删除了xrange函数,并且range函数的行为类似于Python 2 xrange。Python 3 range不是函数,而是代表不可变数字序列的类型。
在本文中,我们将介绍Python 3 range类型的基础知识。
Python range()语法
range构造函数采用以下形式:
range(stop)
range(start, stop[, step])
提供给range构造函数的参数必须为整数,不允许使用浮点数和其他类型。
range接受一个必需参数和两个可选参数,它返回一个代表给定range的range对象,并根据需要生成数字。
Python range(stop)
当仅给出一个参数时,range返回一个数字序列,以1递增,从0到Stop-1。
这是作用range的类型:
for i in range(5):
print(i)
生成的数字序列从0开始,以4(5-1)结尾:
0
1
2
3
4
如果参数为0或负整数range,则返回空序列:
print(list(range(-5)))
我们将range对象转换为列表,因为range对整数序列进行了惰性计算,输出为空列表:
[]
Python range(start, stop)
提供两个参数时,range返回一个数字序列,以1递增,从start到stop - 1。
这是一个例子:
for i in range(3, 5):
print(i)
返回:
3
4
stop参数必须大于start,否则,序列为空:
print(list(range(5, 3)))
返回:
[]
您可以使用0,正整数和负整数作为参数:
print(list(range(-5, -3)))
返回:
[-5, -4]
如果是:
print(list(range(-3, 0)))
返回:
[-3,-2,-1]
[-3, -2, -1]
Python range(start, stop, step)
当给出三个参数时,range返回一个数字序列,逐步增加或减少,从start到stop - 1。
如果step为正,则range返回一个递增的序列:
for i in range(0, 26, 5):
print(i)
返回:
0
5
10
15
20
25
递增时,stop参数必须大于start,否则,序列为空。
如果step为负,则range返回一个递减的序列:
for i in range(20, 4, -5):
print(i)
返回:
20
15
10
5
递减时,stop参数必须小于start,否则,序列为空。
如果step为0,则会引发ValueError异常,如下所示:
Traceback (most recent call last):
File "", line 1, in
ValueError: range() arg 3 must not be zero
结论
以上就是Python Range()的基础知识,Python range类型允许您生成整数序列,它主要用于for循环。
相关主题