コンテキスト:いくつかの数字のリストの正確な要素をランダムに消去し、いくつかのランダムなインデックスを抽出してaleaindexと呼ばれるセットに保存する必要がありました(完了、一部の SO ユーザーの助けのおかげで正常に動作します)。ここで、古いリストa、bなどを新しい、最終的にはより短いリストnewa、newbなどに置き換えたいと思います。関数は次のとおりです。
def myfunction(N, other_parameters, a, b, c):
...
while (...):
aleaindex.add(random.randint(..., ...))
...
new_a = [v for i, v in enumerate(a) if i not in aleaindex]
while a: a.pop()
a = new_a[:]
...
他のリストb、cなどについても同様です。
問題: 関数はモジュール内でそれらを正しく変更しているように見えますが (印刷によってチェックされます)、変更されたリストをモジュールの外側、つまり「メイン」ファイルに印刷すると、リストは変更されていません。どこが間違っていますか?