Python @property裝飾器

通過 @property 裝飾器,可以直接通過方法名來訪問方法,不需要在方法名後添加一對“()”小括號。

@property
def 方法名(self)
    代碼塊

例如,定義一個矩形類,並定義用 @property 修飾的方法操作類中的 area 私有屬性,代碼如下:

class Rect:
    def __init__(self,area):
        self.__area = area
    @property
    def area(self):
        return self.__area
rect = Rect(30)
#直接通過方法名來訪問 area 方法
print("矩形的面積是:",rect.area)
運行結果爲:

矩形的面積爲: 30

上面程序中,使用 @property 修飾了 area() 方法,這樣就使得該方法變成了 area 屬性的 getter 方法。需要注意的是,如果類中只包含該方法,那麼 area 屬性將是一個只讀屬性。

 

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章