开发者社区 问答 正文

合并多个字典或映射

现在有多个字典或者映射,你想将它们从逻辑上合并为一个单一的映射后执行某些操作, 比如查找值或者检查某些键是否存在。

展开
收起
哦哦喔 2020-04-16 18:59:53 1117 分享 版权
1 条回答
写回答
取消 提交回答
  • 假如你有如下两个字典:
    
    a = {'x': 1, 'z': 3 }
    b = {'y': 2, 'z': 4 }
    现在假设你必须在两个字典中执行查找操作(比如先从 a 中找,如果找不到再在 b 中找)。 一个非常简单的解决方案就是使用 collections 模块中的 ChainMap 类。比如:
    
    from collections import ChainMap
    c = ChainMap(a,b)
    print(c['x']) # Outputs 1 (from a)
    print(c['y']) # Outputs 2 (from b)
    print(c['z']) # Outputs 3 (from a)
    
    2020-04-16 19:00:04
    赞同 展开评论
问答地址: