You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Python中将numpy二维数组行插入到目标数组的指定位置

NumPy数组指定位置批量插入行的最高效实现

最高效的方案是直接使用NumPy原生的np.insert()方法,该方法底层由C语言实现,相比Python层手动循环拼接的性能高1~2个数量级,尤其适合大尺寸数组的操作场景。

注意:NumPy默认使用0起始索引,你示例中提到的「插入到第3行位置、插入到第5行位置」是1起始计数,需要先转换为对应0起始的插入位置数组[2, 4]。

完整实现代码

import numpy as np

# 初始化输入数组
a = np.array([
    [4, 2],
    [7, 3],
    [1, 8]
])
b = np.array([
    [10, 6],
    [9, 5]
])

# 定义每行对应的插入位置(0起始索引)
insert_positions = [2, 4]

# axis=0指定沿行维度插入
result = np.insert(a, insert_positions, b, axis=0)
print(result)

输出结果

[[ 4  2]
 [ 7  3]
 [10  6]
 [ 1  8]
 [ 9  5]]

方案优势

  • 支持批量插入多个行,不需要逐次调用插入接口,避免频繁内存申请
  • 底层原生实现,性能远高于Python层循环拼接、列表转换等方案
  • 代码简洁易维护,仅需一行核心代码即可完成需求

内容的提问来源于stack exchange,提问作者manacoder

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.27 22:24:00