列表索引超出范围,显然没有问题

2024-09-27 22:30:38 发布

您现在位置:Python中文网/ 问答频道 /正文

transposta = []
nova_linha = []
for i in range (len(matriz)):
    for j in range(len(matriz[i])):
        nova_linha.append(matriz[i][j])
        i+=1
    transposta.append(nova_linha)
    j+=1
    nova_linha = []
return transposta

我在nova\u linha.append(matriz[I][j]行)中获取列表索引超出范围错误

为什么会这样


Tags: in列表forlenreturn错误rangenova
1条回答
网友
1楼 · 发布于 2024-09-27 22:30:38

这很好:

for i in range (len(matriz)):
    for j in range(len(matriz[i])):
        nova_linha.append(matriz[i][j])    
    transposta.append(nova_linha)
    nova_linha = []

但是,您添加了执行i += 1j += 1的行。在range上的for循环已经为您解决了这个问题

通常情况下,这将是无害的,因为它是无用的,因为您的更改会被扔掉,下一次通过循环,但你也让他们倒退。所以现在,每次通过内部循环,你都会增加i,很快你就会从矩阵的底部跑出来

相关问题 更多 >

    热门问题