什么是 get()?
在 Python 中,get() 是字典(dict)对象的一个内置方法,用于安全地获取字典中某个键对应的值。
如果键不存在,它不会抛出 KeyError 异常,而是返回一个默认值(可自定义,默认为 None)。
基本语法
value = dict.get(key, default_value)
key:要查找的键。default_value(可选):如果键不存在时返回的值。若未提供,默认为None。
使用示例
# 示例字典
user = {'name': 'Alice', 'age': 25}
# 使用 get() 安全取值
print(user.get('name')) # 输出: Alice
print(user.get('email')) # 输出: None
print(user.get('email', '未提供')) # 输出: 未提供
与直接索引访问的区别
直接使用 dict[key] 访问不存在的键会引发 KeyError:
# user = {'name': 'Bob'}
print(user['email']) # 报错: KeyError: 'email'
而 get() 则更安全,适合处理不确定是否存在的键。
💡 最佳实践建议
- 在处理用户输入、API 响应或配置文件等不确定结构的数据时,优先使用
get()。 - 合理设置默认值,避免后续逻辑因
None值出错。 - 不要滥用
get()替代所有字典访问——当确定键存在时,直接索引更高效且语义清晰。
常见应用场景
- 解析 JSON 数据时提取可选字段。
- 读取环境变量或配置项(如
os.environ.get('DEBUG', 'False'))。 - 构建灵活的函数参数默认值处理逻辑。