我正在寻找合并两个字典如下所示,但我没有成功这样做。你知道吗
我读了很多博客文章,但没有找到答案。你知道吗
dict1={"KPNS": {"metadocdep": {"eta": {"sal": "2"}}, "metadocdisp": {"meta": {"head": "1"}}}, "EGLS": {"apns": {"eta": {"sal": "2"}}, "gcm": {"meta": {"head": "1"}}}}
dict2={"KPNS": {"metadocdep": {"eta": {"sal": "7"}}, "metadocdisp": {"meta": {"head": "5"}}}, "EGLS": {"apns": {"eta": {"sal": "7"}}, "gcm": {"meta": {"head": "9"}}}}
finaldict = {key:(dict1[key], dict2[key]) for key in dict1}
print finaldict
我的最终输出应该是:
{"KPNS": {"metadocdep": {"eta": {"sal": [2,7]}},
"metadocdisp": {"meta": {"head": [1,5]}}},
"EGLS": {"apns": {"eta": {"sal": [2,7]}},
"gcm": {"meta": {"head": [1,9]}}}}
我该怎么做?你知道吗
使用defaultdict
如果您知道预期的深度是多少,可以使用嵌套的defaultdicts来定义
final_dict
:由于
defaultdict
的存在,增加了很多输出,但是您可以将final_dict
视为一个简单的dict用字典
对于标准dict,您必须使用^{} 。不过,代码的可读性并不高:
使用
dict.items()
可能会更有效率:相关问题 更多 >
编程相关推荐