Python 中的 property() 函式

Python 中的 property() 函式是一個很有用的函式,它可以讓你將特定的屬性設定為可讀取或可寫入的,而不需要使用特定的函式來設定或取得屬性值。

property() 函式可以讓你將特定的屬性設定為可讀取或可寫入的,而不需要使用特定的函式來設定或取得屬性值。它可以讓你將特定的屬性設定為可讀取或可寫入的,而不需要使用特定的函式來設定或取得屬性值。

property() 函式的基本語法

property() 函式的基本語法如下:

property(fget=None, fset=None, fdel=None, doc=None)

其中,fget 是用來取得屬性值的函式,fset 是用來設定屬性值的函式,fdel 是用來刪除屬性的函式,doc 是用來提供屬性的文件說明。

使用 property() 函式的範例

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

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

    # getter
    @property
    def name(self):
        return self._name

    # setter
    @name.setter
    def name(self, value):
        if not isinstance(value, str):
            raise TypeError('Expected a string')
        self._name = value

    # deleter
    @name.deleter
    def name(self):
        raise AttributeError("Can't delete attribute")

p = Person('John')
print(p.name)

p.name = 'Jack'
print(p.name)

del p.name

在上面的範例中,我們使用 property() 函式來定義一個 Person 類別,並且定義了一個 name 屬性,它可以被讀取和寫入,但是不能被刪除。

總結

property() 函式是一個很有用的函式,它可以讓你將特定的屬性設定為可讀取或可寫入的,而不需要使用特定的函式來設定或取得屬性值。它可以讓你將特定的屬性設定為可讀取或可寫入的,而不需要使用特定的函式來設定或取得屬性值。

Categorized in:

Tagged in: