通過一個屬性來(查看,設置,刪除)另一個屬性
特點:
不需要用戶接觸方法名(getSize等)
當修改方法名時只需修改對應的property()參數,不用告訴用戶調用方式不變,仍然是x
格式:
屬性2 = property(查看屬性1,重置屬性1,刪除屬性1)
例子:
class C:
def __init__(self,size = 10):
self.size = size
def getSize(self):
return self.size
def setSize(self,value):
self.size = value
def delSize(self):
del self.size
x = property(getSize,setSize,delSize)
c1 = C()
# 正常方法查看屬性size
c1.getSize()
c1.size
# 用屬性x查看屬性size
c1.x #執行第一個參數
#通過屬性x,重置屬性size的值
c1.x = 18 # 執行第二個參數
# 通過屬性x,重置屬性size
del c1.x #執行第三個參數
如果需要修改方法名getSize爲get_X_Size,只要修改代碼爲
class C:
def __init__(self,size = 10):
self.size = size
def get_X_Size(self): #改咯
return self.size
x = property(get_X_Size,setSize,delSize) #改咯
c1 = C()
用戶想調用屬性size的值時方式不變
方便用戶