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

Python:如何从指定索引位置合并两个numpy数组?

解决numpy数组指定位置合并并部分元素相加的问题

可以通过numpy的切片操作和数组拼接来实现需求,具体步骤如下:

  1. 拆分原数组a为两部分:需要直接保留的前缀,以及需要和b对应元素相加的部分
  2. 拆分数组b为两部分:和a相加的部分,以及剩余需要直接追加的部分
  3. 对需要相加的部分执行元素级加法
  4. 用np.concatenate将所有部分拼接成最终数组

完整代码示例:

import numpy as np

a = np.array([1,2,3,4,5,6])
b = np.array([1,1,1,1])

# 拆分a的前缀和待相加片段
a_prefix = a[:3]
a_add_segment = a[3:]

# 拆分b的待相加片段和剩余部分
b_add_segment = b[:len(a_add_segment)]
b_remaining = b[len(a_add_segment):]

# 计算相加后的片段
combined_add_segment = a_add_segment + b_add_segment

# 拼接所有部分得到目标数组c
c = np.concatenate([a_prefix, combined_add_segment, b_remaining])
print(c)  # 输出结果:[1 2 3 5 6 7 1]

关键说明:

  • 切片操作a[:3]、a[3:]可以快速拆分数组,比循环更高效
  • np.concatenate支持合并多个数组,相比np.append更灵活,能处理任意位置的拼接需求
  • 通过len(a_add_segment)动态获取需要相加的元素长度,保证代码的通用性,即使a和b的长度变化也能适配

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.13 20:25:25