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

Python NumPy中如何按索引数组从源数组提取元素生成目标数组

按索引数组从NumPy数组取值的实现

该需求属于NumPy整数数组索引(俗称“花式索引”)的典型应用场景,无需手动编写元素遍历循环即可直接实现取值,具体实现方式如下:

  • 最简洁实现:直接将存储索引的数组k作为下标传入原数组p,NumPy会自动遍历k中的每个整数作为位置标记,依次从p中取出对应位置的元素,最终生成的数组形状、长度与k完全一致:
    want = p[k]
    
    运行验证:
    print(want)
    # 输出结果:[0.3 0.2 0.1 0.2],与预期目标数组完全匹配
    
  • 等价实现:也可以使用NumPy内置的np.take函数完成相同的取值逻辑,在当前一维数组场景下,返回结果和上述写法完全一致:
    want = np.take(p, k)
    

使用注意:通过这类整数数组索引取值时,需要保证k中的所有元素都是p的合法下标(即取值范围在0 ~ len(p)-1之间),否则会触发索引越界的运行错误。


内容的提问来源于stack exchange,提问作者Ku-trala

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.22 14:57:02