当前位置: 首页 > news >正文

python: range()函数用法总结

range 函数用于生成一个不可变的整数序列,常用于循环操作和生成索引。以下是其详细用法总结:

1. 基本语法

python

复制

range(stop)                # 生成 0 ≤ i < stop 的整数序列(步长=1)
range(start, stop)         # 生成 start ≤ i < stop 的整数序列(步长=1)
range(start, stop, step)   # 生成 start ≤ i < stop 的整数序列(步长=step)

2. 参数说明
参数描述默认值
start序列起始值(包含)0
stop序列终止值(不包含)必填
step步长(正数递增/负数递减)1

3. 不同用法示例
(1) 生成连续整数

python

复制

# 生成 0~4
print(list(range(5)))           # [0, 1, 2, 3, 4]# 生成 2~5
print(list(range(2, 6)))        # [2, 3, 4, 5]
(2) 指定步长

python

复制

# 生成 0~9 的偶数
print(list(range(0, 10, 2)))    # [0, 2, 4, 6, 8]# 逆序生成 5~1
print(list(range(5, 0, -1)))    # [5, 4, 3, 2, 1]
(3) 空序列场景

python

复制

# 当 start ≥ stop 且 step > 0
print(list(range(5, 3)))        # []# 当 start ≤ stop 且 step < 0
print(list(range(3, 5, -1)))    # []

4. 常见应用场景
(1) 遍历循环

python

复制

for i in range(3):print(i)  # 输出 0, 1, 2
(2) 生成索引访问列表

python

复制

fruits = ['apple', 'banana', 'cherry']
for i in range(len(fruits)):print(fruits[i])
(3) 创建等差数列

python

复制

# 生成 0.0, 0.5, 1.0(需结合列表推导式)
step = 0.5
values = [x * step for x in range(0, 3)]
print(values)  # [0.0, 0.5, 1.0]
(4) 控制循环次数

python

复制

# 重复执行 3 次
for _ in range(3):print("Hello!")

5. 注意事项
  • 参数类型:所有参数必须为整数,否则抛出 TypeError

  • 内存效率:Python3 的 range 返回迭代器(惰性计算),适合处理大范围数据。

  • 负步长:需确保 start > stop,否则返回空序列。

  • 不可变性range 对象不可直接修改,需转换为列表(如 list(range(5)))。


6. 兼容性提示
  • Python2range() 返回列表,xrange() 返回生成器(类似Python3的 range)。

  • Python3:只有 range,行为等同于Python2的 xrange


通过灵活组合 startstopsteprange 函数能满足大多数整数序列生成需求,是Python中高效且常用的工具。

相关文章:

  • 高级java每日一道面试题-2025年4月11日-微服务篇[Nacos篇]-Nacos使用的数据库及其数据同步机制是什么?
  • Linux——信号(1)信号的产生
  • 【uniapp】vue2 使用 Vuex 状态管理
  • Linux:进程:进程调度
  • 电控---CMSIS概览
  • 关于 AI智能穿戴设备 的详细解析,涵盖其定义、核心技术、功能特性、应用场景、市场现状、挑战与未来趋势,结合典型案例帮助理解其核心价值
  • HTML:表格数据展示区
  • Android studio前沿开发--利用socket服务器连接AI实现前后端交互(全站首发思路)
  • Springboot 自动装配原理是什么?SPI 原理又是什么?
  • 【PGCCC】Postgres MVCC 内部:更新与插入的隐性成本
  • Selenium 获取 Web 页面信息的全指南
  • 【补充篇】Davinci工具要求的dbc格式
  • FortiAI 重塑Fortinet Security Fabric全面智能化进阶
  • ECharts散点图-散点图8,附视频讲解与代码下载
  • 解锁智能制造:PLC远程下载如何让设备运维效率提升10倍?
  • 【C++ Qt】Hello World、初始信号槽、理解对象树 ~~~(通俗易懂 图文并茂)
  • Prometheus thanos架构
  • 【HDFS入门】HDFS高可用性与容错机制深度解析
  • 正则表达式在爬虫中的应用:匹配 HTML 和 JSON 的技巧
  • YOLOv12即插即用---RFAConv
  • 携程:今年第一季度营业收入约138亿元,入境旅游预订同比增长超100%
  • 特朗普与普京开始电话会谈,稍后将致电泽连斯基
  • 欧阳娜娜等20多名艺人被台当局列入重要查核对象,国台办回应
  • 西藏普兰县公安局网安大队向自媒体人宣传网络安全知识
  • 舞者王佳俊谈“与AI共舞”:像多了一个舞伴,要考虑它的“感受”
  • 卿晨璟靓等用服刑经历“引流”,专家:将犯罪问题娱乐化会消解刑罚严肃性