编写一个函数,合并dict1和dict2,如果键重复,则保留dict2中的值。
时间: 2024-10-14 10:05:35 浏览: 23
你可以编写一个Python函数来实现这个需求,这里是一个简单的例子:
```python
def merge_dicts(dict1, dict2):
merged_dict = dict1.copy() # 首先创建dict1的一个副本,防止原始数据被修改
for key, value in dict2.items():
if key in merged_dict:
# 如果键已经在merged_dict中,就更新其值为dict2的值
merged_dict[key] = value
else:
# 否则,直接添加新的键值对
merged_dict[key] = value
return merged_dict
# 示例用法
dict1 = {'a': 1, 'b': 2}
dict2 = {'b': 3, 'c': 4}
merged = merge_dicts(dict1, dict2)
print(merged) # 输出:{'a': 1, 'b': 3, 'c': 4}
```
相关问题
编写一个函数,合并dict1和dict2,如果键重复,则保留dict2中的值。 dict1 = {'a': 1, 'b': 2, 'c': 3} dict2 = {'b': 20, 'c': 30, 'd': 40}
你可以编写一个名为 `merge_dicts` 的函数,它接受两个字典作为输入并返回一个新的合并字典,其中使用 dict2 中的值替换掉 dict1 中对应键的值,如果键在两者中都存在的话。以下是这个函数的一个实现:
```python
def merge_dicts(dict1, dict2):
merged_dict = dict1.copy() # 创建一个dict1的浅拷贝,避免直接修改原dict1
for key, value in dict2.items():
if key in merged_dict:
merged_dict[key] = value
return merged_dict
# 测试
dict1 = {'a': 1, 'b': 2, 'c': 3}
dict2 = {'b': 20, 'c': 30, 'd': 40}
merged = merge_dicts(dict1, dict2)
print(merged) # 输出: {'a': 1, 'b': 20, 'c': 30, 'd': 40}
```
在这个例子中,键 'b' 和 'c' 在两个字典中都存在,所以最终结果中它们的值分别被 20 和 30 替换。
阅读全文