Python 中的 getattr() 函式

Python 中的 getattr() 函式可以用來取得物件的屬性值,它可以接受三個參數:物件、屬性名稱、預設值(可選)。如果物件中有該屬性,則會回傳該屬性的值;如果沒有,則會回傳預設值(如果有指定),或是拋出 AttributeError 的例外。

使用 getattr() 函式的範例

下面是一個使用 getattr() 函式的範例:

class Person:
    def __init__(self, name, age):
        self.name = name
        self.age = age

person = Person('John', 20)

# 取得 name 屬性
name = getattr(person, 'name')
print(name) # John

# 取得 age 屬性
age = getattr(person, 'age')
print(age) # 20

# 取得不存在的屬性
gender = getattr(person, 'gender', 'Male')
print(gender) # Male

在上面的範例中,我們建立了一個 Person 的物件,並使用 getattr() 函式取得它的 name 和 age 屬性,最後我們也使用 getattr() 函式取得不存在的 gender 屬性,並指定一個預設值 Male。

getattr() 函式的優點

使用 getattr() 函式可以讓我們更容易地取得物件的屬性值,而不用擔心屬性是否存在,也不用擔心會拋出 AttributeError 的例外。

總結

Python 中的 getattr() 函式可以用來取得物件的屬性值,它可以接受三個參數:物件、屬性名稱、預設值(可選)。使用 getattr() 函式可以讓我們更容易地取得物件的屬性值,而不用擔心屬性是否存在,也不用擔心會拋出 AttributeError 的例外。

Categorized in:

Tagged in: