ホームページ >バックエンド開発 >Python チュートリアル >Python で辞書が等しいかどうかを比較するにはどうすればよいでしょうか?

Python で辞書が等しいかどうかを比較するにはどうすればよいでしょうか?

Patricia Arquette
Patricia Arquetteオリジナル
2024-10-30 16:41:03551ブラウズ

How do you compare dictionaries in Python for equality?

辞書間の等価比較を理解する

Python では、2 つの辞書を比較するのは難しい場合があります。簡単なアプローチの 1 つは、キーと値のペアを繰り返し処理し、等しいかどうかを確認することです。以下に例を示します。

<code class="python">x = dict(a=1, b=2)
y = dict(a=2, b=2)

for x_values, y_values in zip(x.items(), y.items()):
    if x_values == y_values:
        print('Ok', x_values, y_values)
    else:
        print('Not', x_values, y_values)</code>

このコードは機能しますが、それほどエレガントではありません。より簡潔なオプションは、辞書内包表記を使用することです。

<code class="python">shared_items = {k: x[k] for k in x if k in y and x[k] == y[k]}</code>

この内包表記は、x と y の間で共有されるキーと値のみを含む新しい辞書 (shared_items) を作成します。この辞書の長さを計算することで、等しいキーと値のペアの数を決定できます:

<code class="python">print(len(shared_items))</code>

以上がPython で辞書が等しいかどうかを比較するにはどうすればよいでしょうか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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