property內置裝飾器
1、什么是property?
是一個python內置的裝飾器,可以裝飾在 "類內部的方法" 上
可以將該方法呼叫方式由 "物件.方法()" 變成 "物件.方法"
2、為什么要用property?
目的是為了迷惑呼叫者,呼叫的 "方法" 誤以為是 "屬性"
PS:在某些場景下,呼叫的方法只是用來獲取計算后的某個值,
例:計算人體BMI(健康)指數 bmi = weight/(height*height)
class User: def __init__(self, name, weight, height): self.name = name self.weight = weight self.height = height # 獲取bmi指數 # 使用property裝飾器 @property def bmi(self): return self.weight / (self.height ** 2) user_obj = User("pig", 100, 1.8) # 不使用property裝飾器 # print(obj.bmi()) # 使用property裝飾器:使呼叫方法看起來像是呼叫屬性 print(user_obj.bmi)
執行結果:
30.864197530864196
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/192853.html
標籤:其他
