嵌套列表中的列表索引超出范围错误。Python 3.4

嵌套列表中的列表索引超出范围错误。Python 3.4,python,list,Python,List,我创建了一个嵌套列表,它是10个列表,每个列表包含10个以上的列表。我希望能够在给定位置向嵌套列表中插入一个值 当我运行这个程序时,它在板上显示列表索引超出范围。插入([5][2],1),第13行。我试着把放入board.insert(board[5][2],1),但随后它取5中的值,2为0,并将数字1插入位置0。我正在使用python 3.4 board = [ [0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0, 0, 0

我创建了一个嵌套列表,它是10个列表,每个列表包含10个以上的列表。我希望能够在给定位置向嵌套列表中插入一个值

当我运行这个程序时,它在
板上显示
列表索引超出范围
。插入([5][2],1)
,第13行。我试着把
放入board.insert(board[5][2],1)
,但随后它取5中的值,2为0,并将数字1插入位置0。我正在使用python 3.4

board = [   
 [0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
 [0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
 [0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
 [0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
 [0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
 [0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
 [0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
 [0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
 [0, 0, 0, 0, 0, 0, 0, 0, 0, 0]
 [0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
 ]
board.insert([5][2],  1)
不能使用“坐标”作为参数进行插入。你必须这样做:

board[5].insert(2, 1)
[   [0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
    [0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
    [0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
    [0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
    [0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
    [0, 0, 1, 0, 0, 0, 0, 0, 0, 0],
    [0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
    [0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
    [0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
    [0, 0, 0, 0, 0, 0, 0, 0, 0, 0]]
您可以这样做:

board[5][2] = 1
这将创建一个如下所示的板:

board[5].insert(2, 1)
[   [0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
    [0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
    [0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
    [0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
    [0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
    [0, 0, 1, 0, 0, 0, 0, 0, 0, 0],
    [0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
    [0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
    [0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
    [0, 0, 0, 0, 0, 0, 0, 0, 0, 0]]
insert
的问题是它会向列表中添加另一个值。Klaus提供的解决方案将生成一个如下所示的表。请注意
板[5]
中的额外元素:

[   [0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
    [0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
    [0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
    [0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
    [0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
    [0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0],
    [0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
    [0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
    [0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
    [0, 0, 0, 0, 0, 0, 0, 0, 0, 0]]

你真的是指插入还是设置?插入将向列表中添加另一个值,并将其增加一个元素。我想您应该改为设置,将当前的
0
值替换为
1
。为清楚起见,
索引器
被抛出
板上。插入([5][2],1)
,因为
[5][2]
告诉python访问
[5]
的index-2元素,该元素只有一个index-0元素。它不是来自
insert
。感谢您的帮助,洛蒂通常会使用del()删除元素,然后使用insert()插入新元素。