【发布时间】:2019-03-03 18:06:46
【问题描述】:
在下面的代码中,我想在矩阵中插入一些数据,我对 IndexError 感到惊讶。 我不明白为什么会出现错误,似乎一切都是正确的。
matrix=[[]]
n=int(input("number of lines and columns n= "))
for i in range(n):
for j in range(n):
x=int(input())
matrix[i].insert(j,x)
print(i,j)
编辑:
我知道我的问题与我最初的想法无关。错误是我想将 x 插入到我的 matrix 变量中不存在的列表中。解决方案是在第一个循环中添加一个新列表,然后添加所需的元素。
【问题讨论】:
-
m的长度为 1。当您尝试访问其第二个元素时,您会收到 IndexError。 -
也许您希望/需要在外循环的每次迭代中创建一个新的子列表 - 像这样 stackoverflow.com/a/52542948/2823755
-
m[0]会随着对insert的每次调用而增长;m没有。 -
感谢 jwebb,这就是我想要的!
标签: python