说明
1、_setattr_设定未知的属性。
如果这个对象没有这个属性的话,设定未知的属性的话,就会调用这个方法。
2、_getattr_找未知的属性。
如果这个对象没有这个属性的话,找未知的属性的话,就会调用这个方法。
3、_getattribute_无论是访问存在还是不存在的属性,都访问了getatribute这个函数。
实例
class Foo(object): def __init__(self): pass def __setattr__(self, key, value): print("调用setattr方法,属性为:", key, value) super().__setattr__(key, value) def __getattr__(self, item): print("调用getattr方法,属性为:", item) return None obj = Foo() obj.x = 123 print(obj.x) print(obj.w)
本文链接:http://so.lmcjl.com/news/10112/