2つのディクショナリを1つのディクショナリにマージ(Merge)

3150 ワード

Mergeの2つのOrderedDictから1つのOrderedDictへの使用可能および使用不可の方法
文書ディレクトリ
  • Merge 2つのOrderedDictから1つのOrderedDictへの使用可能および使用不可能な方法
  • 利用可能な方法
  • メソッドは使用できません
  • Reference

  • mergeの前後を順番に保つために、多くの方法をテストし、1時間ほどかかりました(ネット上から情報を取得して辞書にし、時間がかかりました).だから共有する必要があります.
    使用可能なメソッド
    from collections import OrderedDict
    
    #           example: "employ name", "employ ID"
    dict_1 = OrderedDict({"Michael": "ali000001",
                          "Maria":   "ali000002",
                          "Steve":   "ali000003"})
    dict_2 = OrderedDict({"Joseph":  "ali000004",
                          "Kankan":  "ali000005"})
                          
    merge_ordereddict = dict_1.copy()
    merge_ordereddict.update(dict_2)
    

    dict_2もともと無秩序だったのに、merge_ordereddictは最後まで秩序正しく、前のdict_1の順序は変更されません.dict_1はOrderedDict typeでなければなりません.
    使用できないメソッド
  • python3.5.x support:merge_dict = OrderedDict({**dict_1, **dict_2}) {**dict1, **dict2}を使用してdictをマージできますが、orderは保証されません.
  • collectionsのChainMap:
    from collections import OrderedDict, ChainMap
    
    merge_ordereddict = OrderedDict(ChainMap(dict_1, dict_2))
    
    はこの方式を使用してmerge dictは可能ですがorderは保証できません.

  • dictマージメソッドのreference:
    Reference
  • Pythonは2つの辞書を合併して1つの新しい辞書のいくつかの方法になって
  • を分析して比較します