如何基于公共密钥加入两个字典?

时间:2019-07-17 21:19:13

标签: python dictionary join

我有这本字典:

{'id': 'centos7', 'remoteVersion': '7.6'}

和这个:

{'id': 'centos7', 'localVersion': '7.5'}

我想得到:

{'id': 'centos7', 'remoteVersion': '7.6', 'localVersion': '7.5'}

是否有一种无需反复处理所有项目的pythonic方法?

1 个答案:

答案 0 :(得分:0)

Python词典每个键只能有一个值。如果要避免在所有项目上写出迭代器,则可以使用列表推导生成带有值的字典,该值作为包含两个字典中的值的列表。产生的数据结构的示例:

{'centos':[{'remoteVersion':'7.6', 'localVersion':'7.5'}]}

也就是说,我认为为您提供的另一种解决方案可能是使用类:

class myNode:
    def __init__(self, id, remoteVersion, localVersion):
        self.id = id
        self.remoteVersion = remoteVersion
        self.localVersion = localVersion

这允许您生成myNode对象:

node1 = myNode('centos7', '7.6', '7.5')