首页 > 解决方案 > 使用字典理解有条件地合并两个字典

问题描述

我想要两个基于 d1 的值和 d2 的键的子字符串连接两个字典。结果字典的键为 d1,对应的值为 d2。

d1 = {'web02': '23', 'web01': '50'}
d2 = {'server/dc-50': 's01.local', 'server/dc-23': 's02.local'}

将导致={web01:s01.local, web02:s02.local}

标签: pythonpython-2.7dictionarydictionary-comprehension

解决方案


我想这就是你需要的:

result = {k1:v2 for k1,v1 in d1.items() for k2,v2 in d2.items() if v1 in k2}

输出

{'web02': 's02.local', 'web01': 's01.local'}

推荐阅读