3.x中没有新式类和老式类之分,它们都继承自'object' 类。...__new__(cls)中不能有多余的参数,比如: super(cls, cls).__new__(cls, *arg, **kwargs) 或 super()....__new__(cls, *arg, **kwargs), *arg, **kwargs 添加应用__init__一致, super() 中的参数要不2个,要不没有
class A(object):...__get__, __getattr__, __getattribute__ 的区别
均是访问属性的方法,注意是属性
__getattr__(self, name) 当访问属性无法找到时,默认异常,可以自定义其返回值或者...AttributeError 异常
__getattribute__(self, name): 2.7 在新式类中引入,如果定义,则无条件执行,如果实行不存在时,也不执行 __getattr__(相当于被屏蔽掉