2

私はPythonでかなり簡単な操作をしようとしていますが、moment_list.remove(moment_list[i]) 行のタイトルにエラーメッセージが表示される理由について困惑しています. 私のコードは次のとおりです。

for i in range(0,len(moment_list_sum)): 
    if moment_list_sum[i]==nMoments:
        moment_list.remove(moment_list[i])
        LHS.remove(LHS[i])
    else:
        pass

ご覧のとおり、2 つのリストからインデックスを削除しようとしてmoment_listおりLHS、if ループの条件を満たし、他のリストの同じインデックスが nMoments に等しいという条件を満たしています。

ループに入る nMoments は 3 に等しい int であり、リストは次のとおりです。

LHS                [y_0, y_1, yx1, yx2, yx3, yx4, yx5, yx6, yx7]
moment_list        [[1, 0], [0, 1], [0, 2], [1, 1], [2, 0], [0, 3], [1, 2], [2, 1], [3, 0]]
moment_list_sum    [1, 1, 2, 2, 2, 3, 3, 3, 3]

それらはすべて同じ長さなので、リストインデックスエラーが発生する理由がわかりません。助けていただければ幸いです!!

4

2 に答える 2