目錄
Python 中的 getattr() 函數
Python 中的 getattr() 函數是用於返回對象的特定屬性。它可以接受三個參數:對象,屬性名稱,默認值(可選)。如果指定的屬性不存在,則返回默認值,如果沒有指定默認值,則返回 AttributeError
。
下面是一個簡單的示例,展示了如何使用 getattr() 函數:
class Person: def __init__(self, name, age): self.name = name self.age = age person = Person('John', 25) # Get the age of the person age = getattr(person, 'age') print(age) # 25 # Get the name of the person name = getattr(person, 'name') print(name) # John # Get the salary of the person (not defined) salary = getattr(person, 'salary', 0) print(salary) # 0
在上面的示例中,我們定義了一個 Person
類,其中包含兩個屬性:name
和 age
。然後,我們創建了一個 Person
對象,並使用 getattr() 函數來獲取對象的屬性值。由於 salary
屬性沒有定義,因此 getattr() 函數返回了默認值 0
。
另一個值得注意的是,getattr() 函數可以用於獲取對象的方法,如下所示:
class Person: def __init__(self, name, age): self.name = name self.age = age def get_name(self): return self.name person = Person('John', 25) # Get the get_name() method of the person get_name_method = getattr(person, 'get_name') print(get_name_method()) # John
在上面的示例中,我們定義了一個 Person
類,其中包含一個 get_name()
方法。然後,我們使用 getattr() 函數獲取 Person
對象的 get_name()
方法,並調用它來獲取對象的名稱。
總之,getattr() 函數是一個非常有用的函數,可以用於獲取對象的屬性和方法。它可以接受三個參數:對象,屬性名稱,默認值(可選)。如果指定的屬性不存在,則返回默認值,如果沒有指定默認值,則返回 AttributeError
。
總結
在本文中,我們詳細介紹了 Python 中的 getattr() 函數,它可以用於獲取對象的屬性和方法。我們還提供了一些示例來說明如何使用該函數。