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

将整数转为NumPy数组后访问索引报错,原因何在?

问题原因及解决方法

核心原因

当你执行np.array(150)时,创建的是0维标量数组,这类数组没有维度(轴),因此无法通过[0]这种索引方式访问元素——索引操作需要针对数组的某个轴,而0维数组不存在任何轴,所以会触发IndexError。

如何得到你预期的结果

要创建能通过[0]访问的数组,你需要传入包含单个元素的可迭代对象(比如列表)来初始化:

a = 150
b = np.array([a])
print(b[0])  # 输出150

此时创建的是1维数组,拥有一个轴,索引0对应这个轴上的第一个(也是唯一一个)元素。

额外技巧:如果已经得到0维数组

如果已经生成了0维数组,也可以通过以下方式获取内部的值:

b = np.array(150)
print(b.item())  # 输出150
print(b[()])     # 输出150

内容的提问来源于stack exchange,提问作者f. c.

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.22 02:24:38