如何在Python中通过键匹配两个字典并关联对应值
解决两个字典按键配对输出的问题
没问题,这其实很简单——咱们可以利用两个字典共享的键来实现名称和数值的配对,直接看具体实现:
首先先定义你的两个字典:
dictName = {5159:'Cube', 1007455:'Subdivision Surface'} dictObj = {5159: 7, 1007455: 2}
核心实现代码
我们可以遍历其中一个字典的键(这里选dictName的键),通过相同的键从两个字典中分别取出名称和数值,再格式化拼接成你想要的字符串:
# 生成每个配对的字符串,再用逗号+空格连接起来 result = ', '.join([f"{dictName[key]} : {dictObj[key]}" for key in dictName]) print(result)
运行这段代码后,输出结果就是:
Cube : 7, Subdivision Surface : 2
更健壮的版本(处理键不匹配的情况)
如果担心两个字典的键可能不完全一致(比如有的键只在其中一个字典里),可以先取两个字典键的交集,只处理共同存在的键,避免出现KeyError:
# 获取两个字典的共同键 common_keys = dictName.keys() & dictObj.keys() result = ', '.join([f"{dictName[key]} : {dictObj[key]}" for key in common_keys]) print(result)
这样不管两个字典有没有额外的键,都只会输出同时存在的键对应的配对结果,更稳妥。
内容的提问来源于stack exchange,提问作者fransua
相关产品推荐
相关产品推荐

