什么是 get()?
在 Python 中,get() 是字典(dict)对象的一个内置方法,
用于安全地获取字典中指定键对应的值。如果键不存在,它不会抛出 KeyError 异常,
而是返回一个默认值(默认为 None)。
语法
value = dict.get(key[, default])
key:要查找的键。default(可选):如果键不存在时返回的默认值,默认为None。
基本用法示例
# 示例 1:键存在
data = {'name': 'Alice', 'age': 30}
print(data.get('name')) # 输出: Alice
# 示例 2:键不存在,返回 None
print(data.get('height')) # 输出: None
# 示例 3:提供默认值
print(data.get('height', 170)) # 输出: 170
与直接索引访问的区别
使用 dict[key] 访问不存在的键会引发 KeyError:
data = {'a': 1}
print(data['b']) # KeyError: 'b'
而 get() 则更安全,适合处理不确定是否存在的键。
实用场景
场景 1:配置读取
从用户配置字典中读取设置项,若未设置则使用默认值。
从用户配置字典中读取设置项,若未设置则使用默认值。
config = {'theme': 'dark'}
theme = config.get('theme', 'light') # 'dark'
language = config.get('language', 'en') # 'en'
场景 2:API 响应处理
解析 JSON 响应时避免因缺失字段导致程序崩溃。
解析 JSON 响应时避免因缺失字段导致程序崩溃。
response = {'status': 'ok', 'data': [1,2,3]}
error_msg = response.get('error', 'No error')
小测验(交互演示)
点击按钮查看 get() 的运行结果: