property setter 装饰器可以把一个方法转化为对此赋值,但此方法有一定要求:
(1)同名;
(2)必须接收 self 和 value 两个参数,value 为所赋的值。
有了 property setter 装饰器之后,被 property 装饰的函数就可以接收参数了。相应的,我们可以通过这个参数来达到我们的一些目的。
除了 setter 之外,还有一个 deleter 的装饰器,这也是 property 的第三个功能。当删除 property 装饰器装饰的函数(由于被 property 装饰,因此函数变成属性)时,会调用 deleter 装饰的函数。
python装饰器转换实例
class Foo: def __init__(self, name): self.name = name @property def f1(self): return self.name @f1.deleter def f1(self): print('hehe') >>> obj = Foo('f1') >>> del obj.f1 hehe
以上就是python装饰器转换方法的注意点,希望能对大家有所帮助。
神龙|纯净稳定代理IP免费测试>>>>>>>>天启|企业级代理IP免费测试>>>>>>>>IPIPGO|全球住宅代理IP免费测试