class People:
def __init__(self, name):
self.__name = name
@property
def name(self): # obj1.name
return self.__name
@name.setter
def name(self, val): # obj1.name='EGON'
if type(val) is not str:
print('必须传入str类型')
return
self.__name = val
@name.deleter
def name(self): # del obj1.name
print('不让删除')
# del self.__name
obj1=People('egon')
# 人正常的思维逻辑
print(obj1.name) #
# obj1.name=18
# del obj1.name
property对象装饰器可以让调用函数看起更像调用数据,但是据我所了解现在只有两种用法一个是更新一个是删除。
而且更新时只能添加一个参数而删除时不能添加参数,且都没有返回值
对象property装饰器
最新推荐文章于 2022-07-28 17:11:10 发布