装饰器@property个人理解
python的@property是python的一种装饰器,是用来修饰方法的。
功能:
主要用于防止私有属性被修改,次要用于修饰方法,使方法可以像属性一样访问
实践:
class A:
def __init__(self) -> None:
self._A =1 #私有属性
@property
def B(self):
return self._A
def C(self):
return self._A
a = A()
print(a.B)
print(a.C())
1.运用装饰器@property后,调用时不需加括号,如果加了括号,那就属于函数调用,会报错。
2.与私有属性配合使用,隐藏了私有属性_A,防止其人调用时修改私有属性。
参考资料:
https://zhuanlan.zhihu.com/p/64487092