Python 基础教程

Python 流程控制

Python 函数

Python 数据类型

Python 文件操作

Python 对象和类

Python 日期和时间

Python 高级知识

Python 参考手册

Python range() 使用方法及示例

Python 内置函数

range()类型返回给定起始整数到终止整数之间的不变数字序列。

range()构造函数有两种定义形式:

range(stop)
range(start, stop[, step])

range()参数

range()主要采用三个在两个定义中具有相同用法的参数:

  • start -整数,从该整数开始返回整数序列

  • stop-要返回整数序列的整数。
    整数范围在第1个终止点结束。

  • step(可选) -整数值,该整数值确定序列中每个整数之间的增量

range()返回值

range()返回一个不可变的数字序列对象,具体取决于所使用的定义:

range(stop)

  • 返回从0stop-1的数字序列

  • 如果stop负数或0,则返回一个空序列。

range(start, stop[, step])

返回值是通过以下公式在给定约束条件下计算的:

r[n] = start + step*n (for both positive and negative step)
where, n >=0 and r[n] < stop (for positive step)
where, n >= 0 and r[n] > stop (for negative step)
  • (如果没有step)step默认为1。返回从startstop-1结束的数字序列。

  • (如果step  为零)引发ValueError异常

  • (如果step非零)检查值约束是否满足,并根据公式返回序列。
    如果不满足值约束,则返回Empty 序列

示例1:范围在Python中如何工作?

# 空 range
print(list(range(0)))

# 使用 range(stop)
print(list(range(10)))

# 使用 range(start, stop)
print(list(range(1, 10)))

运行该程序时,输出为:

[]
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
[1, 2, 3, 4, 5, 6, 7, 8, 9]

注意:我们已经将范围转换为Python列表,因为range()返回一个类似于生成器的对象,该对象仅按需打印输出。

但是,范围构造函数返回的范围对象也可以通过其索引访问。它同时支持正负索引。

您可以按以下方式按索引访问范围对象:

rangeObject[index]

示例2:使用range()在给定数字之间创建偶数列表

start = 2
stop = 14
step = 2

print(list(range(start, stop, step)))

运行该程序时,输出为:

[2, 4, 6, 8, 10, 12]

示例3:range()如何与负step一起使用?

start = 2
stop = -14
step = -2

print(list(range(start, stop, step)))

# 不满足值约束
print(list(range(start, 14, step)))

运行该程序时,输出为:

[2, 0, -2, -4, -6, -8, -10, -12]
[]

Python 内置函数