range() 整数序列
最后更新:2026-09-22
range() 整数序列
range(stop) 或 range(start, stop[, step]) 返回不可变整数序列对象。常配合 for 循环。
| 分类 | 内置函数 |
|---|---|
| 类型 | 内置函数 |
| Python 版本 | all |
📝 语法
range(stop)
range(start, stop[, step])
⚙️ 参数
| stop 必选 | 序列的结束值(不含),必选。 |
|---|---|
| start 可选 | 起始值(含),默认 0。(默认值:0) |
| step 可选 | 步长,默认 1;不能为 0。(默认值:1) |
返回值:返回不可变整数序列 range 对象,可迭代、可求 len、支持索引。
💥 异常
TypeError— 参数不是整数(或未实现 __index__)时抛出。ValueError— step 为 0 时抛出。
▶ 示例
编辑下方代码,点击运行,在输出面板查看结果:
运行结果:
[0, 1, 2, 3, 4]
[1, 3, 5, 7, 9]
🏷️ 相关内置函数
💡 相关案例
更多实战案例即将上线,敬请期待。
❓ 常见问题
Qlist(range(5)) 为什么是 [0,1,2,3,4] 而不是到 5?
Arange 是左闭右开区间,stop 不包含;想要 1-5 用 range(1, 6)。
Qrange(1, 10, 2) 生成什么?
A生成 1, 3, 5, 7, 9。step 是步长;step 传 0 会抛 ValueError: range() arg 3 must not be zero。
Qrange 是列表吗?内存占用大吗?
A不是列表,是惰性的序列对象,只存 start/stop/step 三个值,range(10**9) 也几乎不占内存;但支持 len()、索引和 in 判断。
Q怎么倒序遍历?
A用负步长:range(10, 0, -1) 生成 10 到 1,range(4, -1, -1) 生成 4 到 0。