如何合并键相同的两个dictionary且不覆盖原有数据
解决方案
假设你已经将两个CSV转换为dict1和dict2,且确认二者所有键完全重合,可直接用以下两种方式实现需求:
方法1:遍历键逐个合并(易理解)
# 示例字典,替换为你实际读取的两个字典即可 dict1 = {'key1': ['place1' , 'web address', 'phone number']} dict2 = {'key1': ['place2', 'different web address', 'different phone number']} final_dict = {} for key in dict1: # 同一键对应的值嵌套两个原字典的列表存入 final_dict[key] = [dict1[key], dict2[key]]
方法2:字典推导式(写法更简洁)
final_dict = {key: [dict1[key], dict2[key]] for key in dict1}
扩展说明
如果后续有更多同结构的字典需要合并,可以把所有字典放进一个列表,用下面的写法实现多字典批量合并,扩展性更强:
# 示例:3个同结构字典合并 dict_list = [dict1, dict2, dict3] final_dict = {key: [d[key] for d in dict_list] for key in dict1}
如果需要避免修改合并后子列表时影响原字典的内容,可以在存入时对原列表做拷贝:
final_dict[key] = [dict1[key].copy(), dict2[key].copy()]
内容的提问来源于stack exchange,提问作者Miller25
相关产品推荐
相关产品推荐

