【问题标题】:how to merge two nested list of dict into new one如何将两个嵌套的dict列表合并为新的
【发布时间】:2020-04-12 09:11:55
【问题描述】:

我有两个嵌套的字典列表,喜欢与相同的分组键合并。例如:

DIC1:

{'SW-01': [{'Aip': '192.168.2.1',
        'Bip': '192.168.2.0',
       {'Aip': '192.168.3.3',
        'Bip': '192.168.3.2'}]}

DIC2:

{'SW-01': [{'Aip': '192.168.1.19',
            'Bip': '192.168.1.18'}],
 'SW-02': [{'Aip': '192.168.1.83',
            'Aip': '192.168.1.82',
           {'Aip': '192.168.1.85',
            'Bip': '192.168.1.84'}]}

如何用组键合并上面的两个字典? 这是我尝试合并的代码,但我从 DIC1 和 DIC2 获得了两次 SW1 数据。

    d = {}
    for key in (*dic1, *dic2):
        try:
            d.setdefault(key,[]).append(dic1[key])
        except KeyError:
            pass
        try:
            d.setdefault(key,[]).append(dic2[key])
        except KeyError:
            pass
    pprint(d)

【问题讨论】:

  • 添加您从代码中获得的预期输出和结果
  • 请写出预期的结果

标签: python list dictionary merge


【解决方案1】:

尝试list()您的字典,然后附加两个列表。 ().append 不支持列表运算符

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-08-15
    • 1970-01-01
    • 2012-08-31
    • 2020-07-21
    • 2021-11-01
    • 2017-09-20
    • 2018-12-11
    相关资源
    最近更新 更多