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