[解決済み] 反復処理中にリストから項目を削除するには?
2022-03-17 09:59:57
質問
Pythonでタプルのリストを反復処理し、特定の条件を満たした場合にそれらを削除しようとしています。
for tup in somelist:
if determine(tup):
code_to_remove_tup
の代わりに何を使用すればよいですか?
code_to_remove_tup
? このような形で項目を削除する方法がわかりません。
解決方法を教えてください。
リスト内包を使って、削除したくない要素だけを含む新しいリストを作成することができます。
somelist = [x for x in somelist if not determine(x)]
または、スライスに代入することで
somelist[:]
を使えば、既存のリストに手を加えて、必要な項目だけを含むようにすることができます。
somelist[:] = [x for x in somelist if not determine(x)]
への参照が他にある場合、この方法は有用です。
somelist
を使用すると、変更を反映させる必要があります。
また、内包の代わりに
itertools
. Python 2 では。
from itertools import ifilterfalse
somelist[:] = ifilterfalse(determine, somelist)
あるいはPython 3で。
from itertools import filterfalse
somelist[:] = filterfalse(determine, somelist)
関連
-
Python Decorator 練習問題
-
[解決済み】なぜ「LinAlgError: Grangercausalitytestsから「Singular matrix」と表示されるのはなぜですか?
-
[解決済み] リストのリストからフラットなリストを作るには?
-
[解決済み] リストが空かどうかを確認するにはどうすればよいですか?
-
[解決済み] リストを均等な大きさの塊に分割するには?
-
[解決済み] リストの最後の要素を取得する方法
-
[解決済み] Pythonの辞書からキーを削除するにはどうしたらいいですか?
-
[解決済み] リストからランダムに項目を選択するにはどうすればよいですか?
-
[解決済み] インデックスを指定してリストから要素を削除する方法
-
[解決済み] Pythonの「名前付きタプル」とは何ですか?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
Pythonの非常に便利な2つのデコレーターを解説
-
python string splicing.join()とsplitting.split()の説明
-
python implement mysql add delete check change サンプルコード
-
Python百行で韓服サークルの画像クロールを実現する
-
PyQt5はユーザーログインGUIインターフェースとログイン後のジャンプを実装しています。
-
Python Pillow Image.save jpg画像圧縮問題
-
[解決済み】TypeErrorの修正方法。Unicodeオブジェクトは、ハッシュ化する前にエンコードする必要がある?
-
[解決済み】「RuntimeError: dictionary changed size during iteration」エラーを回避する方法とは?
-
[解決済み】TypeError: re.findall()でバイトのようなオブジェクトに文字列パターンを使用することはできません。)
-
[解決済み】「OverflowError: Python int too large to convert to C long" on windows but not mac