[python]numpy.arange()函数的使用

numpy.arange 函数使用详解(零基础易懂)

一、arange 函数核心作用

numpy.arange() 是 NumPy 中用来生成等差数组的函数。

简单说:就是帮你快速生成「规律递增的数字序列」,和 Python 原生的 range() 非常像,但更强大------支持小数步长、直接生成数组

二、标准语法

arduino 复制代码
numpy.arange(start, stop, step, dtype=None)

参数详解

  • start(可选) :序列起始值,默认 = 0
  • stop(必选) :序列结束值,不包含该值(左闭右开)
  • step(可选) :步长/间隔,默认 = 1
  • dtype(可选) :指定数组数据类型,默认自动推导

重点规则包含 start,不包含 stop

三、四种基础用法(全覆盖)

1. 只传 stop(最常用)

从 0 开始,步长为 1,到 stop 前结束

python 复制代码
import numpy as np

arr = np.arange(5)
print(arr)
# 输出:[0 1 2 3 4]

2. 指定 start + stop

从 start 开始,步长 1,不包含 stop

scss 复制代码
arr = np.arange(2, 8)
print(arr)
# 输出:[2 3 4 5 6 7]

3. 指定 start + stop + step(自定义间隔)

ini 复制代码
# 从1开始,到10结束(不包含10),步长2
arr = np.arange(1, 10, 2)
print(arr)
# 输出:[1 3 5 7 9]

4. 小数步长(碾压原生 range)

Python 自带的 range 不支持小数步长,arange 支持,非常适合绘图、采样、区间划分

scss 复制代码
arr = np.arange(0, 1, 0.2)
print(arr)
# 输出:[0.  0.2 0.4 0.6 0.8]

四、指定数据类型 dtype

ini 复制代码
# 生成浮点型数组
arr = np.arange(0, 5, dtype=np.float32)
print(arr)
# 输出:[0. 1. 2. 3. 4.]

五、常见实战场景

1. 生成索引序列

ini 复制代码
index = np.arange(10)
# [0 1 2 3 4 5 6 7 8 9]

2. 生成坐标轴数据(matplotlib 绘图常用)

lua 复制代码
x = np.arange(-np.pi, np.pi, 0.01)
# 生成连续密集区间,用于画 sin、cos 曲线

六、高频易错点(必看)

易错1:取不到 stop 值

np.arange(0, 5) 最大是 4,永远不包含右端点

易错2:小数步长精度问题

由于浮点数精度误差,偶尔会出现末尾多一个数/少一个数。 需要均匀等分区间优先用 np.linspace,arange 更适合「固定步长」。

易错3:步长不能为 0

step=0 会直接报错,无法生成序列。

七、arange 与 range 区别(面试/实战常问)

特性 range() np.arange()
返回值 可迭代对象 NumPy 数组
小数步长 不支持 支持
运算能力 只能遍历 支持向量批量运算

八、极简总结

  • np.arange(stop) :0 到 stop-1,步长1
  • np.arange(start, stop) :左闭右开区间,步长1
  • np.arange(start, stop, step) :自定义步长,支持小数
  • 适合:固定步长生成序列;均分区间优先用 linspace
相关推荐
大貔貅喝啤酒3 小时前
Python Requests库教程
自动化测试·python·requests库
copyer_xyf3 小时前
LangChain 调用 LLM
后端·python·agent
copyer_xyf4 小时前
Prompt 组织管理
后端·python·agent
shimly1234564 小时前
python3 uvicorn 是啥?
python
CTA量化套保5 小时前
期货量化程序 time.sleep 卡死:天勤单线程与 deadline 替代
python·区块链
GIS数据转换器5 小时前
城市排水生命线安全运行监测平台深度解析
java·运维·人工智能·python·安全·数据挖掘·无人机
贤哥哥yyds6 小时前
GBK转UTF\-8编码自动转换工具 使用文档
python
数量技术宅6 小时前
2026量化前沿:从Reddit热帖到Python实战,如何用赫斯特指数(Hurst)狙击虚假突破?
开发语言·python
华如锦6 小时前
面了很多 Java转AI Agent方向,一些面试题总结
java·开发语言·人工智能·python·ai
戴西软件6 小时前
戴西 DLM 许可授权管理系统:破解无网络环境下工业软件授权难题,助力制造企业降本增效
网络·人工智能·python·深度学习·程序人生·算法·制造