property 屬性

#propery 屬性
"""
內置裝飾器函數,只在面向對象中使用。
"""
#計算圓的面積,圓的周長
from math import pi
class Circle:
    def __init__(self,r): #r是圓的半徑
        self.r = r
    @property
    def perimeter(self): #方法 後面不能傳參數
        return  2*pi*self.r

    @property
    def aera(self): #方法 後面不能傳參數
        return self.r**2*pi
c1 = Circle(5)
#print(c1.aera()) #沒有使用@property的時候須要這樣調用。
#在類裏面定義的動做,那麼他就是一個方法
#周長,面積是個名詞的話,算是一個屬性。可是,他是經過計算得來的。
#經過@property 裝飾器。函數後面不能傳參數
#再次調用的時候就是一個屬性了。
直接調用。
print(c1.aera)
print(c1.perimeter)

 再好比get_area 獲取圓的面積就是動做。函數

再好比獲取學生信息也是動做,可是學生信息就是屬性。spa

相關文章
相關標籤/搜索