Python 3.9+ 新特性:字典合并的优雅之道
在日常编程中,字典合并是一个常见需求。Python 3.9 引入了两个全新操作符 | 和 |=,让字典操作变得更加简洁优雅。
传统合并方式的痛点
过去我们需要用 update() 方法或 {**d1, **d2} 这样的技巧:
d1 = {
'a': 1, 'b': 2}
d2 = {
'b': 3, 'c': 4}
# 旧方法1
result = d1.copy()
result.update(d2)
# 旧方法2
result = {
**d1, **d2}
新操作符的简洁之美
现在只需一个 | 操作符:
# 合并字典(不修改原字典)
merged = d1 | d2 # {'a': 1, 'b': 3, 'c': 4}
# 原地合并
d1 |= d2
实际应用场景
- 配置合并:默认配置 + 用户自定义配置
- 数据聚合:合并多个API返回的数据
- 缓存更新:增量更新缓存字典
性能提示
- 对于大型字典,
|=通常比创建新字典更高效 - 合并时后出现的键值会覆盖先出现的
这个看似小的语法糖,实际上体现了Python哲学——让常见任务变得更简单。除了字典合并,Python 3.9+ 还引入了类型提示语法改进、字符串前缀后缀移除方法等实用特性,持续提升开发体验。
掌握这些新特性,能让你的代码更简洁、更Pythonic。建议在支持新版本的环境中都尝试使用这些现代语法。