是否可以定义一个python类,如果在类实例中调用了某个属性但该属性不存在,则该类不返回AttributeError异常?像
class A():
pass
a = A()
a.tutu <==not raising AttributeError
感谢
答案 0 :(得分:3)
您可以在班级上定义__getattr__
方法。请参阅the documentation。
这是一个简单的示例,它为所有缺少的属性赋予值“Default”:
>>> class Foo(object):
... def __getattr__(self, attr):
... return "Default"
>>> f = Foo()
>>> f.someJunk
'Default'