通过一个属性来(查看,设置,删除)另一个属性
特点:
不需要用户接触方法名(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的值时方式不变
方便用户