python中向字典中添加值
1. 直接通过键赋值
若键存在则更新值,不存在则添加新键值对。
python
d = {'name': 'Alice'}
d['age'] = 30 添加新键值对
d['name'] = 'Bob' 更新已存在的键
print(d) {'name': 'Bob', 'age': 30}
2. 使用 `update` 方法
合并另一个字典或可迭代的键值对到当前字典,已存在的键会被更新。
python
d = {'a': 1}
d.update({'b': 2}) 添加/更新单个字典
d.update(c=3, d=4) 使用关键字参数
d.update([('e',5), ('f',6)]) 使用元组列表
print(d) {'a':1, 'b':2, 'c':3, 'd':4, 'e':5, 'f':6}
3. 使用 `setdefault` 方法
若键不存在,则设置默认值并返回;存在则直接返回原值。
python
d = {'a': 1}
value = d.setdefault('b', 100) 添加 'b':100,返回100
print(d) {'a':1, 'b':100}
4. 字典合并操作符(Python 3.9+)
使用 `|` 合并字典,或 `|=` 原地合并(重复键以右侧字典为准)。
python
d = {'a': 1} | {'b': 2} 新字典 {'a':1, 'b':2}
d |= {'c': 3} 原地更新,d变为 {'a':1, 'b':2, 'c':3}
5. 仅添加不存在的键
避免覆盖原有键,可先检查存在性:
python
d = {'a': 1}
new_items = {'a': 999, 'b': 2}
for key, value in new_items.items:
if key not in d:
d[key] = value
print(d) {'a':1, 'b':2} (仅添加了不存在的键)
根据具体需求选择合适的方法即可。