はじめに こんにちは、サーバーレス開発部の岡です。 普段Pythonを使っている人であれば当たり前の仕様かもしれませんが、Pythonでリストの要素をループ内で削除するときは少し工夫が必要です。 初心者だとハマりどころかと思うので、メモとして残しておきます。 ループ内で削除してみる data = [0,1,2,3,4,5,6,7,8,9] for i in data: data.remove(i) 期待する結果としては空のリストです。 ですが結果を見てみると、 print(data) // [1, 3, 5, 7, 9] なぜか奇数が残りました。 一瞬バグかと思いますがPythonの仕様です。 公式ドキュメントを見てみると、以下のように書かれていました。 注釈 ループ中でのシーケンスの変更には微妙な問題があります (これはミュータブルなシーケンスのみ、例えばリストで起こり得ます)。 どの要