Python|合并两个字典的8种方法
在Python中,可以使用多种方法来合并两个字典。以下是8种不同的方法:
- 使用
update()
方法:
dict1 = {'a': 1, 'b': 2}
dict2 = {'c': 3, 'd': 4}
dict1.update(dict2)
print(dict1) # 输出: {'a': 1, 'b': 2, 'c': 3, 'd': 4}
- 使用字典推导式:
dict1 = {'a': 1, 'b': 2}
dict2 = {'c': 3, 'd': 4}
merged_dict = {k: v for d in [dict1, dict2] for k, v in d.items()}
print(merged_dict) # 输出: {'a': 1, 'b': 2, 'c': 3, 'd': 4}
- 使用
collections.ChainMap
:
from collections import ChainMap
dict1 = {'a': 1, 'b': 2}
dict2 = {'c': 3, 'd': 4}
merged_dict = ChainMap(dict1, dict2)
merged_dict = dict(merged_dict)
print(merged_dict) # 输出: {'a': 1, 'b': 2, 'c': 3, 'd': 4}
- 使用
**
运算符:
dict1 = {'a': 1, 'b': 2}
dict2 = {'c': 3, 'd': 4}
merged_dict = {**dict1, **dict2}
print(merged_dict) # 输出: {'a': 1, 'b': 2, 'c': 3, 'd': 4}
- 使用
dict.fromkeys()
方法:
dict1 = {'a': 1, 'b': 2}
dict2 = {'c': 3, 'd': 4}
merged_dict = dict.fromkeys(dict1, None)
merged_dict.update(dict.fromkeys(dict2, None))
print(merged_dict) # 输出: {'a': 1, 'b': 2, 'c': 3, 'd': 4}
- 使用
itertools.chain()
:
from itertools import chain
dict1 = {'a': 1, 'b': 2}
dict2 = {'c': 3, 'd': 4}
merged_dict = dict(chain(dict1.items(), dict2.items()))
print(merged_dict) # 输出: {'a': 1, 'b': 2, 'c': 3, 'd': 4}
- 使用
operator.iteartools()
:
from itertools import chain
from operator import iteartor
dict1 = {'a': 1, 'b': 2}
dict2 = {'c': 3, 'd': 4}
merged_dict = dict(iteartor(chain(dict1.items(), dict2.items())))
print(merged_dict) # 输出: {'a': 1, 'b': 2, 'c': 3, 'd': 4}
- 使用
defaultdict
:
from collections import defaultdict
dict1 = {'a': 1, 'b': 2}
dict2 = {'c': 3, 'd': 4}
merged_dict = defaultdict(dict)
merged_dict.update(dict1)
merged_dict.update(dict2)
print(merged_dict) # 输出: {'a': 1, 'b': 2, 'c': 3, 'd': 4}
以上每种方法都可以实现两个字典的合并,选择哪种方法取决于具体的应用场景和需求。
评论已关闭