class Room:
def __init__(self,name):
self.name = name
def big_room(self):
print('bigroot')
def __getattr__(self, item):
print('调用一个不存的对象属性时候,执行')
def __delattr__(self, item):
print('删除一个属性时候,执行')
def __setattr__(self, key, value):
print('设置一个属性操作的时候,执行')
self.__dict__[key] = value
R = Room('回电话') #设置一个属性操作的时候,执行__setattr__
R.ddddddd #调用这个对象属性不存在,就执行__getattr__ 属性,不要加括号
del R.y #删除的时候会触发__delattr__ 不管删除的这个属性是否存在 都触发
print(R.__dict__)
__getattr__ __delattr__ __setattr__使用
猜你喜欢
转载自www.cnblogs.com/ajaxa/p/9051951.html
今日推荐
周排行