2018-06-16__getattr__和__getattribute__的区别

  • getattr(self, item):获取属性的时候,先去找字典,字典找不到的时候在这里新建
  • getattribute(self, item)定义了以上规则
    一旦有“.”,必先调用17行getattribute方法,其中定义了Python的一个规则,就去索引或者调用getattr进行新建
    “.”调用__getattribute__方法
  • getattribute相当于启用了一个极高权限的自定义,一般情况下不会去改写

你可能感兴趣的:(2018-06-16__getattr__和__getattribute__的区别)