1369

7 分钟

#Python 的内置函数 getattr

说明:获取属性的值。

#函数说明

def getattr(obj, name:str): ''' 获取属性的值 :param obj: 一个对象 :param name: 属性的名字 '''

说明

获取对象属性的值。

  1. 首先调用 __getattribute__ 方法,尝试获取对象的 __dict__ 属性字典
  2. 未找到该属性时,如果对象实现了 __getattr__ 方法,则会调用该方法

属性不存在时,产生 AttributeError 异常。

__getattribute__object 中定义的方法,默认读取 __dict__ 属性字典。 如果 __dict__ 属性字典中没有指定的属性,则尝试调用 __getattr__ 方法。

  • 重载 __getattr__ 方法可以自定义查找 __dict__ 属性字典中没有的属性的方式。
  • 重载 __getattribute__ 方法可以自定义所有属性的查找方式。

请参考 hasattrdelattrsetattr 等相关函数。

参数

  • obj - 要获取属性的对象
  • name - 要获取的属性名

返回值

属性的值;如果属性不存在,则产生 AttributeError 异常。

#示例

class Person: def __init__(self, name, age): self.name = name self.age = age p = Person("Alice", 30) print(p.name) print(getattr(p, 'name'))

>>> Establishing WebAssembly Runtime.

>>> Standby.

Powered by Shift.

#推荐阅读

创建于 2025/6/9

更新于 2025/7/26