目錄
Python 中的 property() 函式
Python 的 property() 函式是一個很好用的工具,它可以讓我們將方法轉換為屬性,以便於我們可以像訪問屬性一樣訪問方法。
property() 函式的語法如下:
property(fget=None, fset=None, fdel=None, doc=None)
其中,fget 是用於讀取屬性值的函式,fset 是用於設定屬性值的函式,fdel 是用於刪除屬性值的函式,doc 是用於提供屬性的文檔說明。
下面是一個簡單的示例,展示如何使用 property() 函式將方法轉換為屬性:
class Person: def __init__(self, name): self.name = name # Getter function def get_name(self): print("Getting name") return self.name # Setter function def set_name(self, value): print("Setting name to " + value) self.name = value # Deleter function def del_name(self): print("Deleting name") del self.name # Use property() to convert get_name(), set_name(), del_name() # to a property name = property(get_name, set_name, del_name) p = Person('John') # Print the value of the name property print(p.name) # Set the name property p.name = 'Jane' # Delete the name property del p.name
上面的示例中,我們定義了一個 Person 類,並且定義了三個函式:get_name()、set_name() 和 del_name(),分別用於讀取、設定和刪除屬性值。然後,我們使用 property() 函式將這三個函式轉換為 name 屬性,並且可以像訪問屬性一樣訪問這三個函式。
總之,Python 的 property() 函式可以讓我們將方法轉換為屬性,以便於我們可以像訪問屬性一樣訪問方法,使得程式碼更加簡潔易讀。