__delattr__: 可封装禁止删除属性

# __author: "ZXYang"
# date: 2020/12/15


class Fun(object):
def __init__(self, name, age, money):
self.name = name
self.age = age
self.money = money

def __delattr__(self, item):
if item in ['name', 'age']:
raise AttributeError("{}属性不能删除".format(item))
else:
super().__delattr__(item)


f = Fun('li', 18, 22000.99)

del f.age
print(f.__dict__)

# AttributeError: age属性不能删除


posted @ 2020-12-15 22:42  zxy_ang  阅读(119)  评论(0)    收藏  举报