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

Python生成整数序列之 range()函数

range() 是 Python 中用于生成一个 不可变的整数序列 的内置函数,常用于循环或需要整数序列的场景。它的核心作用是 按规则生成一组连续或间隔的数字


基本语法

range(stop)                # 生成 0 到 stop-1 的整数(默认从0开始)
range(start, stop)         # 生成 start 到 stop-1 的整数
range(start, stop, step)   # 生成 start 到 stop-1 的整数,步长为 step

核心作用

  1. 生成数字序列
    返回一个可迭代对象(Python 3 中不是列表,但可转换为列表),默认从 0 开始,左闭右开(不包含 stop)。
list(range(5))           # [0, 1, 2, 3, 4]
list(range(2, 6))        # [2, 3, 4, 5]
list(range(1, 10, 2))    # [1, 3, 5, 7, 9]
list(range(5, 0, -1))    # [5, 4, 3, 2, 1](反向步长)
  1. 控制循环次数
    for 循环中指定迭代次数:
for i in range(3):
    print("Hello")  # 输出 3 次 "Hello"
  1. 遍历序列的索引
    结合 len() 遍历列表、字符串等的索引:
words = ["apple", "banana", "cherry"]
for i in range(len(words)):
    print(i, words[i])  # 输出索引和对应元素
  1. 生成等差数列
    通过 step 参数控制间隔:
list(range(0, 10, 3))    # [0, 3, 6, 9]

注意事项

  1. 参数必须为整数
    start, stop, step 必须是整数,否则会报错:
range(1.5)  # ❌ 错误:TypeError
  1. 左闭右开
    生成的序列不包含 stop 本身:
list(range(2, 5))  # [2, 3, 4]
  1. 步长为负时需确保逻辑正确
    step 为负数时,start 应大于 stop
list(range(5, 2, -1))  # [5, 4, 3]
  1. 内存高效
    range() 直接生成可迭代对象(Python 3 特性),而非一次性生成全部数字,适合大范围场景:
for i in range(1000000):  # 不会占用大量内存
    pass

与其他函数的对比

  • **Python 2 中的 **xrange():类似于 Python 3 的 range(),返回生成器。
  • numpy.arange():支持浮点数步长(需安装 NumPy 库)。

总结

range() 是 Python 中生成整数序列的核心工具,高效且灵活,广泛用于循环控制、索引遍历、数字序列生成等场景。掌握它能让代码更简洁、更高效!


相关文章:

  • 《C++11:bind绑定器与function包装器》
  • Kotlin when 表达式完全指南:从基础到高级的12种实战用法
  • Redis的深入了解
  • 页面类buttons权限的简单控制
  • MySQL学习日志--多表查询篇
  • NDK CMake工程中引入其他C++三方库
  • 视频格式转换:畅享多平台无缝视频体验
  • 31天Python入门——第16天:模块与库详解
  • StarRocks语句解析json字符串的方法
  • 还刷刷刷刷刷
  • 洛谷1044栈C语言
  • 2025Java面试TOP1000问:源码级解答+避坑指南+性能优化
  • [C++][STL]unordered_set类和unordered_map类
  • 【MySQL】从零开始:掌握MySQL数据库的核心概念(五)
  • columns实现瀑布流布局
  • ⑦(ACG-网络配置)
  • 06 单目标定-去畸变
  • React Native与原生Android数据传递
  • 【Unity】 鼠标拖动物体移动速度跟不上鼠标,会掉落
  • 学习《JS数据结构与算法》
  • 重庆市建设局网站/seo是什么
  • 工程网站建设方案/网站关键词怎么优化排名
  • 百度网站降权/seo技术好的培训机构
  • 东莞室内设计培训/四川网络推广seo
  • 专业的个人网站建设哪家/百度推广信息流有用吗
  • 网站建设测试工具/东莞优化网站制作