面试题答案
一键面试使用update()方法
- 操作阐述:
update()
方法用于将一个字典的键值对更新到另一个字典中。如果被更新的字典中已存在相同的键,那么对应的值会被新字典中的值替换;如果不存在,则会添加新的键值对。 - 对原字典的影响:会直接修改调用
update()
方法的原字典。 - 返回值:
update()
方法没有返回值(返回None
)。
示例代码:
dict1 = {'a': 1, 'b': 2}
dict2 = {'b': 3, 'c': 4}
result = dict1.update(dict2)
print(dict1)
print(result)
使用字典解包
- 操作阐述:通过在字典前使用
**
操作符,可以将字典解包。在创建新字典时,可以使用多个字典解包,将多个字典的键值对合并到一个新字典中。如果有重复的键,后面字典的键值对会覆盖前面字典的键值对。 - 对原字典的影响:不会修改原字典,而是创建一个新的字典。
- 返回值:返回一个新的合并后的字典。
示例代码:
dict1 = {'a': 1, 'b': 2}
dict2 = {'b': 3, 'c': 4}
new_dict = {**dict1, **dict2}
print(new_dict)
print(dict1)
print(dict2)
操作差异总结
- 对原字典影响:
update()
方法会修改原字典,而字典解包不会修改原字典,而是生成新字典。 - 返回值:
update()
方法返回None
,字典解包返回新的合并后的字典。