Code Fix

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

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

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

 1  scores = [0, 0, 5, 10]
 2  for s in _____________:
                   ^
 3      if s == 0:
 4          scores.remove(s)
 5  print(scores)
出力: [0, 5, 10]期待: [5, 10] (エラーにはなりません)

空欄を埋めて実行を通す

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

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

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

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