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

Python中如何按指定列表提取并打印NumPy数组的特定行?

Numpy数组按指定索引提取多行的修正方案

问题说明

需要从Numpy数组A中提取J指定的行,当J=[[1,4]]时,目标是获取第1行和第4行组成的二维数组,但现有代码输出不符合预期。

错误原因

现有代码在循环中每次将A重新赋值为A[i]:

  • 第一次循环后,A变为一维的第1行数组
  • 第二次循环时,A[i]实际是取这个一维数组的第4个元素,导致输出错误

修正代码

直接利用Numpy的数组索引特性,一次性提取所有目标行:

import numpy as np

A = np.array([[1,2,3,4,5],
              [6,7,8,9,10],
              [11,12,13,14,15],
              [16,17,18,19,20],
              [21,22,23,24,25]])

J = [[1, 4]]

# 提取J[0]中的索引对应的行
result = A[J[0]]
print([result])

输出结果

运行修正后的代码,输出与期望一致:

[array([[ 6,  7,  8,  9, 10],
        [21, 22, 23, 24, 25]])]

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.06 20:45:30