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

Python中如何正确获取numpy.matrix矩阵的单个元素

问题原因

numpy 的 matrix 是强制二维的数据结构,执行 m[0] 时返回的是矩阵第0行的二维行矩阵(形状为 (1, 2)),继续用 [0] 索引该二维行矩阵的第0维,依然会返回整个行矩阵,最终得到 [[1 2]],不符合预期。

解决方法
  • 方法1:使用 numpy 标准多维度逗号索引,直接定位到目标位置,是当前场景下最推荐的写法:
import numpy as np

m = np.matrix('[1, 2; 3, 4]')
print(m[0, 0])

运行后即可输出目标值1。

  • 方法2:如果要保持两次索引的写法,可以对返回的行矩阵调用 item() 方法取指定位置的标量:
print(m[0].item(0))
  • 方法3(长期使用更推荐):numpy 官方已不再推荐使用 np.matrix 类型,改用 np.array 创建二维数组即可兼容 [0][0] 的常规索引写法:
import numpy as np

m = np.array([[1, 2], [3, 4]])
print(m[0][0])

该写法同样会输出1,且 np.array 是 numpy 主推的通用数据结构,适配更多官方API。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.28 01:54:03