Python 3.9引入|和|=操作符合并字典,|创建新字典,|=就地更新,重复键后者覆盖,相比**解包和update()更直观清晰。
在 Python 3.9 中,字典合并变得更加方便,引入了新的合并操作符。你可以使用 | 操作符来合并两个字典,也可以使用 |= 操作符来就地更新字典。
使用 | 操作符合并字典
这个操作符会创建一个新字典,包
含两个字典的键值对。如果存在重复的键,后面字典的值会覆盖前面的。
dict1 = {'a': 1, 'b': 2}
dict2 = {'c': 3, 'b': 4}
merged = dict1 | dict2
print(merged) # 输出: {'a': 1, 'b': 4, 'c': 3}
使用 |= 操作符更新字典
这个操作符会直接修改原字典,将另一个字典的内容合并进来,类似 update() 方法。
dict1 = {'a': 1, 'b': 2}
dict2 = {'c': 3, 'b': 5}
dict1 |= dict2
print(dict1) # 输出: {'a': 1, 'b': 5, 'c': 3}
与旧版本对比
在 Python 3.9 之前,通常用 ** 解包或 update() 方法来实现类似效果。
# 旧方式:使用解包
merged = {**dict1, **dict2}
或者使用 update()
dict1.update(dict2)
现在有了更直观的语法,代码更清晰易读。
基本上就这些,不复杂但容易忽略细节。








