property属性

本文详细介绍了Python中如何使用@property装饰器来实现对类属性的封装,通过两种方式定义属性的get、set和delete操作,使代码更加清晰和易于维护。
class C:
"""
典型用法
第⼀个参数是⽅法名,调⽤ 对象.属性 时⾃动触发执⾏⽅法
第⼆个参数是⽅法名,调⽤ 对象.属性 = XXX 时⾃动触发执⾏⽅法
第三个参数是⽅法名,调⽤ del 对象.属性 时⾃动触发执⾏⽅法
第四个参数是字符串,调⽤ 对象.属性.__doc__ ,此参数是该属性的描
"""

def __init__(self):
self._x = None

def getx(self):
return self._x

def setx(self, value):
self._x = value

def delx(self):
del self._x

x = property(getx, setx, delx, "I'm the 'x' property.")


c = C()
print(c.x)
c.x = 10
print(c.x)
del c.x
print(c.x)
***********************************************************************
方式二
class C:
def __init__(self):
self._x = None

@property
def x(self):
"""I'm the 'x' property."""
return self._x

@x.setter
def x(self, value):
self._x = value

@x.deleter
def x(self):
del self._x


c = C()
print(c.x)
c.x = 10
print(c.x)
del c.x
print(c.x)

转载于:https://www.cnblogs.com/whigym/p/9868693.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值