gpt4 book ai didi

python - 列表数组中超出范围的列表赋值索引

转载 作者:行者123 更新时间:2023-12-05 09:07:21 25 4
gpt4 key购买 nike

我试着制作我的第一个列表数组。

matrix = [list() for x in range(10)]
for i in range (10):
matrix[i] = [0 for x in range(3)]
matrix[2][0] = 1
print (matrix)

如果我想更改第一个索引括号(如 [2][0])中大于零的单元格中的值,则会收到“列表分配索引超出范围”错误。我可以更改单元格 [0][0]、[0][1] 和 [0][2] 中的值,但不能更改单元格 [1][x] 中的值或第一个括号中的更高值。我真的不明白我的错误,因为据我所知,如果我打印它们,直到 [9][2] 的所有单元格似乎都已定义。

非常感谢您的帮助!

最佳答案

让我们单步执行您的代码。

matrix = [list() for x in range(10)]

此时,matrix 是一个包含 10 个空列表的列表。现在,让我们考虑 for 循环的第一次 迭代。

for i in range (10): # i will be 0
matrix[i] = [0 for x in range(3)] # matrix is now a list of
# (one list of 3 zero's),
# and 9 empty lists
matrix[2][0] = 1 # remember that the rest of the elements in matrix
# are still empty lists. matrix[2] is an empty list,
# so you can't access matrix[2][0], as that would be
# getting the 0th index of an empty list.

关于python - 列表数组中超出范围的列表赋值索引,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64976579/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com