IndexError:列表索引超出循环的范围



我有一个3D数组。我想提取第三个元素。例如,这里我想打印6,9,20。但是Python抛出这个错误。

values = [
[[0, 6], [0, 9], [0, 20]],
[[1, 2], [1, 4], [1, 9 ]]]
i=0
for j in range(0,len(values[i])):
print(values[i][i][j])

不确定哪里出了问题,因为print(values[0][0][1])工作正常,并给出了6

这里len(values[i])是3因此range(0, len(values[i])给你的值是0,1,2[0,6]的长度是2你不能访问索引为2的元素

因此它给你索引超出范围的错误

for j in range(0,len(values[i]))中j的值变为0,1,2,但是当j的值为2并且运行values[i][i][j]i=0时,代码运行values[0][0][2],这超出了[0,6]的范围值

打印6,9,20。可以使用这段代码:

values = [[[0, 6], [0, 9],[ 0, 20]], [[1, 2], [1, 4], [1, 9]]]
for j in range(len(values[0])):
print(values[0][j][1])

相关内容

  • 没有找到相关文章

最新更新