Skip to main content
 首页 » 编程设计

python之连接两个字典并处理其共同值(value)

2025年05月04日15fff_TT

嗨,如果我想对公共(public)值做一些事情而不是仅仅更新它们呢?例如假设值是一个字符串,我想在它们之间放置一个简单的制表符

a={'car':'ferrari','color':'red','driver':'M'}  
b={'car':'lamborghini','color':'yellow','transmission':'manual'} 

这样的结果是,

merge_ab={'car':'ferrari\tlamborghini','color':'red\tyellow','driver':'M\t','transmission':'\tmanual'} 

请您参考如下方法:

这是一个很好的 Pythonic 方法:

dicts = [a, b] 
allKeys = set(k for d in dicts for k in d.iterkeys()) 
makeValue = lambda k: '\t'.join(d.get(k, '') for d in dicts) # Make merged value for a given key 
merged = dict((k,makeValue(k)) for k in allKeys)