python中的__getattribute__容易出现的bug
class Person(object):
def __getattribute__(self,obj):
print("test")
if obj.startwith("a"): #如果对象是以a字母开头的
return "hahaha"
else:
return self.test #这里不能这么写,因为self.test还会被__getattribute__捕获然后再进入到else就是这样一直死循环
def test(self):
pass
t = Person()
t.a
t.b#这里开始出现死循环