Python update() 语法
update() 是 Python 字典的一个方法,它使用另一个字典、可迭代对象或关键字参数来更新当前字典。如果键已存在,则覆盖其值;如果键不存在,则新增键值对。
语法:
dict.update(other)说明:
update() 方法接收单个参数。
other(必选):它可以是以下类型之一。- 字典:直接合并其键值对。
- 可迭代对象:由键值对元组组成的列表,或其他可迭代对象(如 [('key1', value1), ('key2', value2)])。
- 关键字参数:通过 key = value 形式传递键值对(如 update(key1 = value1, key2=value2))。
特别注意,update() 方法会直接修改原字典,而不是创建一个新字典。
提示: 对于大规模数据合并,不建议使用 update() 方法,而是推荐使用:① 字典推导式;② “|” 运算符(Python 3.9+)。
Python update() 摘要
| 使用频率 | 中 |
|---|---|
| 修改原字典 | 是 |
| 官方文档 | 查看 |
Python update() 示例
接下来,我们通过几个简单的例子来讲解 Python update() 方法是如何使用的。
示例 1:键在字典中使用 update()
d1 = {'one': 1, 'two': 2 }
d2 = {'two': 22}
d1.update(d2)
print(d1)运行结果如下。
{'one': 1, 'two': 22}分析:
如果键在字典中,则 update() 方法会使用新值来更新键。
示例 2:键不在字典中使用 update()
d1 = {'one': 1, 'two': 2 }
d2 = {'three': 3}
d1.update(d2)
print(d1)运行结果如下。
{'one': 1, 'two': 2, 'three': 3}分析:
如果键不在字典中,则 update() 方法会将新的键值对添加到字典中。
示例 3:update() 使用可迭代对象更新字典
d1 = {'one': 1, 'two': 2 }
d2 = [('three', 3), ('four', 4)]
d1.update(d2)
print(d1)运行结果如下。
{'one': 1, 'two': 2, 'three': 3, 'four': 4}分析:
在这个例子中,update() 的参数是一个列表,该列表的每个元素又是一个元组。此时元组的第 1 个元素会作为键,而第 2 个元素会作为值。
示例 4:update() 使用关键字参数更新字典
d1 = {'one': 1, 'two': 2}
d1.update(three=3, four=4)
print(d1)运行结果如下。
{'one': 1, 'two': 2, 'three': 3, 'four': 4}分析:
在上面例子中,update() 方法使用了关键字参数。直接通过关键字参数传递键值对,语法更简洁,不过键需要是合法标识符。
示例 5:update() 混合多种参数类型
d1 = {'one': 1}
d2 = {'two': 2}
d1.update(d2, three=3, four=4)
print(d1) 运行结果如下。
{'one': 1, 'two': 2, 'three': 3, 'four': 4}分析:
update() 支持同时传递字典和关键字参数,来实现原字典的更新。在上面例子中,d2 中的键值对与关键字参数 three=3 和 four=4 会被一并合并到 d1 中。
