MST
星途 面试题库

面试题:Python动态更新字典内容时如何处理嵌套字典

给定字典`nested_dict = {'person': {'name': 'Bob', 'hobbies': ['reading', 'running']}}`,现在要动态添加一个新的爱好`'swimming'`到`hobbies`列表中,同时添加一个新的键值对`'city': 'New York'`到`person`字典里。请用Python代码实现,并说明在嵌套字典更新过程中需要注意的要点。
18.7万 热度难度
编程语言Python

知识考点

AI 面试

面试题答案

一键面试
nested_dict = {'person': {'name': 'Bob', 'hobbies': ['reading', 'running']}}
# 添加新爱好到hobbies列表
nested_dict['person']['hobbies'].append('swimming')
# 添加新键值对到person字典
nested_dict['person']['city'] = 'New York'
print(nested_dict)

在嵌套字典更新过程中需要注意的要点:

  1. 确保外层键存在:在访问或修改嵌套字典内层的值之前,要确保外层的键已经存在。如果外层键不存在,直接访问内层键会引发KeyError
  2. 数据结构类型匹配:比如添加新爱好到hobbies列表时,要确认hobbies确实是列表类型。如果类型不匹配,可能导致运行时错误。例如,如果hobbies被错误赋值为一个字符串,调用append方法就会报错。