如何在 Python 字典中添加和更新键

了解如何在 Python 字典中添加元素或更新键值对。探索方括号、更新方法和合并运算符选项。

在编辑器中尝试此解决方案

概述

在字典中添加和更新元素是状态管理、数据处理和配置更新的核心概念。由于 Python 字典是可变集合,因此您可以在程序执行期间轻松动态地修改它们的键和值,而无需重新创建整个结构。

添加键值对的最简单方法是使用方括号赋值语法:`my_dict[key] = value`。如果键不存在,Python 将其添加到字典中。如果该键已经存在,Python 会用新值覆盖其旧值。

对于批量更新或合并操作,Python 提供了 .update() 方法,该方法接受另一个字典或可迭代的键值对。此外,在Python 3.9+ 中,您可以使用合并并集运算符“|”将两个字典合并为一个新字典,或使用更新运算符“|=”就地更新字典。

代码和执行输出

该脚本演示了 Python 中的添加、更新和合并字典。

update_dict.py
在编辑器中尝试
profile = {"username": "sara", "level": 5}

# 1. Add new key-value pair using brackets
profile["verified"] = True
print("After adding key:", profile)

# 2. Update existing key using brackets
profile["level"] = 6
print("After updating key:", profile)

# 3. Add/Update multiple keys using update()
profile.update({"avatar": "cat.png", "level": 7})
print("After update():", profile)

# 4. Using the merge operator (Python 3.9+)
extra_info = {"location": "US"}
merged_profile = profile | extra_info
print("Merged profile:", merged_profile)
端子输出
After adding key: {'username': 'sara', 'level': 5, 'verified': True}
After updating key: {'username': 'sara', 'level': 6, 'verified': True}
After update(): {'username': 'sara', 'level': 7, 'verified': True, 'avatar': 'cat.png'}
Merged profile: {'username': 'sara', 'level': 7, 'verified': True, 'avatar': 'cat.png', 'location': 'US'}

逐步实施

  • 使用方括号符号 my_dict['new_key'] = value 插入单个新元素。
  • 调用 my_dict.update(new_dict) 就地合并多个键和值。
  • 使用 |Python 3.9+ 中的联合运算符可以组合字典而不改变原始字典。

常见问题解答

如果我添加一个已经存在的密钥会发生什么?

与该键关联的旧值会被新值悄悄覆盖。

如果不存在,我可以添加具有默认列表值的键吗?

是的!您可以使用 my_dict.setdefault(key, []) 或使用集合模块中的 defaultdict 来自动初始化默认值。

相关主题

推荐的 Python 资源

通过相关的交互式教程、备忘单和代码比较来扩展您的知识。