ホームページ > バックエンド開発 > Python チュートリアル > リスト値を含む辞書を逆順に表示するにはどうすればよいですか?

リスト値を含む辞書を逆順に表示するにはどうすればよいですか?

Susan Sarandon
リリース: 2024-10-29 18:55:02
オリジナル
1056 人が閲覧しました

How to Reverse a Dictionary with List Values?

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

辞書の反転には、元の辞書のキーと値が交換される新しい辞書の作成が含まれます。元の辞書にリスト値が含まれている場合、Python はリストをハッシュできないため、問題が発生します。

タプル キーにタプルを使用する

この問題に対処する 1 つのアプローチは、次のとおりです。リストの値をタプルに変換します。タプルは不変であり、ハッシュ化できるため、辞書内のキーとして機能できます。

次のコードを考えてみましょう。

<code class="python">inverted_index = {}
for key, values in index.items():
    for value in values:
        tuple_key = (key, value)
        inverted_index.setdefault(tuple_key, []).append(key)</code>
ログイン後にコピー

このコードは、タプルの一意の組み合わせごとに新しいキーを作成します。元のキーと値。次に、inverted_index ディクショナリに、反転されたキーと値のペアが設定されます。

一意の値にセットを使用する

あるいは、セットを使用して、反転されたキーと値のペアを処理することもできます。辞書。セットは、一意の要素の順序付けされていないコレクションです。

<code class="python">inverted_index = {}
for key, values in index.items():
    unique_values = set(values)
    for value in unique_values:
        inverted_index.setdefault(value, set()).add(key)</code>
ログイン後にコピー

このコードは、元のキーごとに一意の値のセットを作成します。次に、inverted_index 辞書に逆向きのキーと値のペアが入力されます。値は一意の元のキーのセットです。

以上がリスト値を含む辞書を逆順に表示するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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