-1

私は次のような辞書を作成しました

d = {1: {"a":1, "b":2}, 2: {"a":1, "b":2}}

上記のような辞書を作成するためにオブジェクトをループしています。

また、ループ中に上記の辞書の逆を作成したいのですが、次のようになります。

d2 = {{"a":1, "b":2}: 1, {"a":1, "b":2}: 2}

ディクショナリがハッシュ不可能なタイプであることは知っていますが、同時に、ディクショナリをループせずに値を逆ルックアップする機能が必要です。

Pythonでこれを行う方法はありますか?

4

1 に答える 1

3

また、ループ中に上記の辞書の逆を作成したいのですが、次のようになります。

  1. いいえ、できません。辞書へのすべてのキーはハッシュ可能である必要があり、辞書はハッシュ可能ではありません
  2. キーに重複するエントリを含めることはできません

Pythonでこれを行う方法はありますか?

キーを辞書にしたくない場合を除いて、他のデータ構造に変換できます。かもしれfrozenset of item listsませんか?

重複するキーが必要な場合は、 MultiMap1.0.3frozenset of item listsで使用してください

そしてグーグルは私に凍結されたdictの実装を返しました、あなたはそれをMultiMap1.0.3で使うことができます

于 2013-02-28T06:31:59.990 に答える