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 的例外。