Python中如何匹配两个字典并输出指定结构的新字典
Python实现方案
核心思路:dict1的键为数字类型,dict2的键为对应数字的字符串格式,我们只需遍历dict1的键,判断该键转字符串后是否在dict2中存在,存在则按需求拼接值即可。
完整可运行代码
# 定义原始字典 dict1 = {142321: ['142321', 'vam@mail.com', 'IN', '4027'], 142322: ['142322', 'can@mail.com', 'IN', '4048'], 142323: ['142323', 'john@mail.com', 'GB', '4117'], 142324: ['142324', 'rohit@mail.com', 'CA', '15027']} dict2 = {'142321': 'vam-k', '142322' : 'can-s', '142324' : 'rohit-j'} # 字典推导式生成目标字典 new_dict = { k: [dict2[str(k)], dict1[k][2], dict1[k][3]] for k in dict1 if str(k) in dict2 } # 打印结果验证 print(new_dict)
输出结果
运行上述代码后输出和需求完全一致:{142321: ['vam-k', 'IN', '4027'], 142322: ['can-s', 'IN', '4048'], 142324: ['rohit-j', 'CA', '15027']}
内容的提问来源于stack exchange,提问作者Ashu
相关产品推荐
相关产品推荐

