ホームページ > バックエンド開発 > Python チュートリアル > Python で条件関数を使用して辞書をフィルタリングする方法

Python で条件関数を使用して辞書をフィルタリングする方法

Linda Hamilton
リリース: 2024-11-11 06:44:02
オリジナル
917 人が閲覧しました

How to Filter a Dictionary Using a Condition Function in Python?

条件関数を使用した辞書のフィルタリング

Python 辞書はデータ操作タスクで広く使用されており、情報に基づいて保存および取得する強力な方法を提供します。キーについて。ただし、特定の基準に基づいて辞書の内容のサブセットを抽出する必要がある状況が発生する場合があります。辞書をフィルタリングして、x 座標と y 座標が両方とも 5 未満である点を選択する例を見てみましょう。

オリジナルのアプローチ

考えられる 1 つのアプローチには、反復処理が含まれます。辞書項目を巡回して各点の座標を確認し、条件に合うものを選択します。このアプローチは簡単ではありますが、冗長でエラーが発生しやすい可能性があります。

points = {'a': (3, 4), 'b': (1, 2), 'c': (5, 5), 'd': (3, 3)}
points_small = {}
for item in [i for i in points.items() if i[1][0] < 5 and i[1][1] < 5]:
    points_small[item[0]] = item[1]
ログイン後にコピー

エレガントなソリューション

Python は、辞書内包表記を使用した、より洗練されたソリューションを提供します。辞書内包表記を使用すると、次の構文を使用して、指定された条件に基づいて新しい辞書を作成できます。この例では、次の構文を使用してフィルタリングされた辞書を作成できます。

{k: v for k, v in points.items() if v[0] < 5 and v[1] < 5}
ログイン後にコピー

Python 2 互換性

Python 2 では、 iteritems() メソッドが使用されます。 items() の代わりに。 Python 2 のコードは次のようになります。

{k: v for k, v in points.iteritems() if v[0] < 5 and v[1] < 5}
ログイン後にコピー

このコンパクトで表現力豊かな構文により、辞書の操作や条件に基づいた特定のデータの抽出が簡単になります。 Python の辞書内包表記は、辞書の内容を効率的かつ簡潔にフィルタリングおよび変換するための強力なツールを提供します。

以上がPython で条件関数を使用して辞書をフィルタリングする方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート