将多个映射合并为单个映射

版权声明:诸葛老刘所有 https://blog.csdn.net/weixin_39791387/article/details/84937960

文章目录

问题

我们有多个字典或映射, 想在逻辑上将它们合并为一个单独的映射结构,以此执行某些特定的操作

解决方案

假设有两个字典:

a = {'x' :1, 'y':4}
b = {'y':2, 'z':3}

有种简单的方法是利用collections模块中的ChainMap类来解决

from collections import ChainMap
c = ChainMap(a,b)
print(c['x'])  # 1
print(c['y'])  # 4
print(c['z'])  # 3

讨论

如果两个字典或映射有重复的键,那么这里会采用第一个映射中所对应的值.
修改映射的操作总是会作用在第一个映射结构上.

猜你喜欢

转载自blog.csdn.net/weixin_39791387/article/details/84937960