开发者社区 问答 正文

如何在单个表达式中合并两个词典?

我有两个Python字典,我想编写一个返回合并这两个字典的表达式:update(),如果它返回结果而不是就地修改dict,那么该方法将是我需要的。

x = {'a':1, 'b': 2} y = {'b':10, 'c': 11} z = x.update(y) print(z) None x {'a': 1, 'b': 10, 'c': 11} 我怎样才能获得最终合并的词典z,不是x吗?

展开
收起
游客6qcs5bpxssri2 2019-09-05 23:20:45 757 分享 版权
1 条回答
写回答
取消 提交回答
  • 在您的情况下,您可以做的是:

    z = dict(x.items() + y.items())

    这将根据您的需要放入最终的dict z,并使key的值b被第二个(y)dict的值正确覆盖:

    x = {'a':1, 'b': 2}

    y = {'b':10, 'c': 11}

    z = dict(x.items() + y.items())

    z

    {'a': 1, 'c': 11, 'b': 10}

    如果你使用Python 3,它只是稍微复杂一点。要创建z:

    z = dict(list(x.items()) + list(y.items()))

    z

    {'a': 1, 'c': 11, 'b': 10}

    2019-09-05 23:21:52
    赞同 展开评论
问答分类:
问答地址: