getattr()用于动态获取对象属性,若属性不存在可返回默认值而不报错。例如getattr(p, 'name')返回"Alice",getattr(p, 'gender', '未知')返回"未知",常用于反射和通用函数编写。
在 Python 中,getattr() 是一个内置函数,用来获取对象的某个属性值。如果该属性存在,就返回它的值;如果不存在,可以提供一个默认值,避免程序报错。
getattr(object, name[, default])
假设有一个简单的类:
class Person:使用 getattr() 获取属性:
p = Person()
attr(p, 'gender', '未知')) # 属性不存在,返回默认值“未知”
它特别适合在你不确定对象是否有某个属性时动态访问。比如处理配置对象、解析数据结构或编写通用函数时非常有用。
基本上就这些。getattr() 看似简单,但在写通用代码时很实用。