#Python 的内置函数 property
说明:创建属性。
#函数说明
class property(getter=None, setter=None, deleter=None, doc=None):
'''
创建属性
:param getter: 获取属性的方法
:param setter: 修改属性的方法
:param deleter: 删除属性的方法
:param doc: 属性的说明
:return: 属性
'''
说明
通过 getter
,setter
,deleter
创建属性。通常以 装饰器 的形式使用。
参数
getter
- 获取属性的方法setter
- 修改属性的方法deleter
- 删除属性的方法doc
- 属性的说明,默认为None
返回值
封装的属性。
#示例
class Cat:
def __init__(self):
self.__name = None
# getter
@property
def name(self) -> str:
print('getter')
return self.__name
# getter
@name.setter
def name(self, name):
print('setter')
self.__name = name
# getter
@name.deleter
def name(self):
print('deleter')
del self.__name
cat = Cat()
cat.name # 调用 getter
cat.name = 'Tom' # 调用 setter
del cat.name # 调用 deleter