ホームページ  >  記事  >  バックエンド開発  >  リスト値を含む辞書を反転するには?

リスト値を含む辞書を反転するには?

Mary-Kate Olsen
Mary-Kate Olsenオリジナル
2024-10-29 18:39:56904ブラウズ

How to Invert a Dictionary with List Values?

リスト値を使用した辞書の反転

目的は、結果の辞書 (反転) に重複した値がマージされるように、リスト値を使用した辞書 (インデックス) を反転することです。元のキーを値として持つ 1 つのキー。

提供された関数 invert_dict は、リストのハッシュ不可能な性質のため、リスト値に遭遇すると失敗します。これを解決するには、次の解決策を検討してください。

<code class="python">inverse = {}
for k, v in index.items():
    for x in v:
        inverse.setdefault(x, []).append(k)</code>

この解決策は、元の辞書 (インデックス) を反復処理して、各キー (k) と値 (v) にアクセスします。 v (リスト) の各値について、setdefault メソッドを使用して、関連するキーを逆辞書のリストに追加します。このメソッドは、v 内の各一意の値に対して新しいエントリを作成し、関連するリストにキーを追加します。

その結果、逆辞書には、各値が元のキーのリストである必要な逆構造が含まれることになります。その値が表示される場所。

以上がリスト値を含む辞書を反転するには?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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