検索

ホームページ  >  に質問  >  本文

Pythonマージ辞書

現在、辞書が 2 つあります。この辞書には 2 つのレベルがあり (レベルの数をカスタマイズできるか無制限にできればより良いでしょう)、それらをマージしたいと考えています

case1:
入力: a: {1:{"171": True}} b:{1:{"172": False}}
出力: {1:{"171": True 、「172」: 偽}}

case2:
入力: a: {1:{"171": True}} b:{1:{"171": False}}
出力: {1:{"171": False }}

Pythonで使っているdict.updateメソッドは1層でしか使えないのですが、何か良い実装方法はありますか?

阿神阿神2764日前1019

全員に返信(2)返信します

  • PHP中文网

    PHP中文网2017-06-22 11:54:21

    多層辞書を処理するマージを書きました

    リーリー

    Python3.6.1のみをテスト済み、deep_mergeを呼び出すだけで済みます

    この文章はより機能的です、私を責めないでください

    返事
    0
  • 代言

    代言2017-06-22 11:54:21

    ケース 2 の場合は比較的簡単です:

    リーリー

    ケース 1 の場合、次のようにすることができます:

    リーリー

    上記の操作を関数にカプセル化できます。

    返事
    0
  • キャンセル返事