Python中如何实现将多个字典或映射对象合并成一个?
- 内容介绍
- 文章标签
- 相关推荐
本文共计914个文字,预计阅读时间需要4分钟。
问题:如何将多个字典或映射从逻辑上合并为一个单一的映射,并执行一些操作,例如查找值或检查键是否存在。
解决方案:添加以下两个字典到单个映射中:pythona={'x': 1, 'z': 3}
问题
现在有多个字典或者映射,你想将它们从逻辑上合并为一个单一的映射后执行某些操作,比如查找值或者检查某些键是否存在。
解决方案
加入你有如下两个字典:
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)
讨论
一个ChainMap接受多个字典并将它们在逻辑上变为一个字典。
本文共计914个文字,预计阅读时间需要4分钟。
问题:如何将多个字典或映射从逻辑上合并为一个单一的映射,并执行一些操作,例如查找值或检查键是否存在。
解决方案:添加以下两个字典到单个映射中:pythona={'x': 1, 'z': 3}
问题
现在有多个字典或者映射,你想将它们从逻辑上合并为一个单一的映射后执行某些操作,比如查找值或者检查某些键是否存在。
解决方案
加入你有如下两个字典:
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)
讨论
一个ChainMap接受多个字典并将它们在逻辑上变为一个字典。

