如何在Python中按指定关联键合并两个字典
如何关联两个字典并整合字段?
你可以通过遍历员工信息字典,结合公司信息字典的关联字段来实现需求,以下是具体的Python实现代码:
import json company_detail_list = { 'Company 1': { 'name': 'Company 1', 'domain': 'Retail' }, 'Company 2': { 'name': 'Company 2', 'domain': 'Construction' } } employee_detail_list = { 'John Doe': { 'full_name': 'John Doe', 'company': 'Company 1' }, 'Tom Smith': { 'full_name': 'Tom Smith', 'company': 'Company 2' } } # 生成目标结果列表 result = [] for emp_info in employee_detail_list.values(): # 复制员工信息字典,避免修改原数据 updated_emp = emp_info.copy() # 通过公司名称获取对应的领域信息 company_domain = company_detail_list[updated_emp['company']]['domain'] # 添加领域字段到员工信息中 updated_emp['domain'] = company_domain result.append(updated_emp) # 格式化输出为指定的JSON样式 print(json.dumps(result, indent=2))
代码说明:
- 遍历
employee_detail_list的所有值(即每个员工的信息字典) - 使用
copy()方法复制员工字典,防止修改原始的员工数据 - 利用员工字典中的
company字段作为键,从company_detail_list中取出对应的domain值 - 将
domain字段添加到复制后的员工字典,再存入结果列表 - 借助
json.dumps()方法可以将结果格式化为你需要的缩进式JSON字符串
运行代码后,输出结果如下:
[ { "full_name": "John Doe", "company": "Company 1", "domain": "Retail" }, { "full_name": "Tom Smith", "company": "Company 2", "domain": "Construction" } ]
内容的提问来源于stack exchange,提问作者Fahmi Sabila Dinnulhaq
相关产品推荐
相关产品推荐

