ホームページ >バックエンド開発 >Python チュートリアル >カスタム条件に基づいて辞書を効率的に整理するにはどうすればよいでしょうか?

カスタム条件に基づいて辞書を効率的に整理するにはどうすればよいでしょうか?

Linda Hamilton
Linda Hamiltonオリジナル
2024-11-15 01:29:02558ブラウズ

How can you efficiently prune a dictionary based on a custom condition?

カスタム条件に基づいた辞書の削除

辞書を使用する場合、指定した基準に基づいて辞書の内容を絞り込むと便利なことがよくあります。タプルとして表現された点の辞書があり、x 座標と y 座標の両方が 5 未満である点のみを抽出することに興味があるとします。

伝統的に、1 つのアプローチには、リストの内包表記:

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]

このメソッドは機能しますが、辞書を使用したより簡潔な解決策があります。 comprehension:

points_small = {k: v for k, v in points.items() if v[0] < 5 and v[1] < 5}

この簡潔な式は、キーと値が指定された条件を満たす新しい辞書を生成します。同様に、Python 2.7 以降では、次の構文を使用できます。

points_small = {k: v for k, v in points.iteritems() if v[0] < 5 and v[1] < 5}

辞書内包表記を使用すると、任意の条件に基づいて辞書をフィルタリングするための洗練された効率的な手段が得られ、より合理化されたアプローチが提供されます。データ操作。

以上がカスタム条件に基づいて辞書を効率的に整理するにはどうすればよいでしょうか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。