Code Fix

上級イテレート中のリスト変更で要素が飛ばされる › パターン2

イテレート中のリスト変更で要素が飛ばされる

forループでリストを走査しながら同じリストからremove()すると、要素の位置がずれて一部が処理から漏れます。

 1  fruits = ["apple", "banana", "banana", "cherry"]
 2  for f in _____________:
                   ^
 3      if f == "banana":
 4          fruits.remove(f)
 5  print(fruits)
出力: ['apple', 'banana', 'cherry']期待: ['apple', 'cherry'] (エラーにはなりません)

空欄を埋めて実行を通す

広告
広告スロット(未設定)

イテレート中のリスト変更で要素が飛ばされる

このエラーの解説と類題をまとめて見る →

広告
広告スロット(未設定)