原文链接:http://www.juzicode.com/archives/6513
错误提示:
numpy数组下标方式访问时提示:IndexError: index 5 is out of bounds for axis 0 with size 5
#VX公众号:桔子code / juzicode.com
import numpy as np
arr = np.arange(0,150,1).reshape(5,10,3)
print(arr.shape)
print(arr[5,2])
==========运行结果:
(5, 10, 3)
---------------------------------------------------------------------------
IndexError Traceback (most recent call last)
<ipython-input-8-e2f0d48a6824> in <module>
3 arr = np.arange(0,150,1).reshape(5,10,3)
4 print(arr.shape)
----> 5 print(arr[5,2])
IndexError: index 5 is out of bounds for axis 0 with size 5
错误原因:
1、numpy数组arr的大小为(5,10,3),下标方式访问时数值范围应该小于各个“轴”的size,上面的错误是arr[5,2]的第0轴下标为5不满足“小于0轴的size=5”。
解决方法:
1、本意是想访问0轴上的从0开始的第4个元素,下标5修改为4:
#VX公众号:桔子code / juzicode.com
import numpy as np
arr = np.arange(0,150,1).reshape(5,10,3)
print(arr.shape)
print(arr[4,2])
==========运行结果:
(5, 10, 3)
[126 127 128]
扩展内容:
如果本文还没有完全解决你的疑惑,你也可以在微信公众号“桔子code”后台给我留言,欢迎一起探讨交流。