实例属性的获取和拦截, 仅对实例属性(instance, variable)有效, 非类属性 getattr: 适用于未定义的属性, 即该属性在实例中以及对应的类的基类以及祖先类中都不存在 1. 动态处理事先未定义的属性, 可更好的实现数据隐藏, 当调用dir(obj)时只会显示初始化定义的正常的属性和方法 getattribute: 对于所有属性的访问都会调用该方法, 当属性不存在时会报错 1. 覆盖该方法之后,任何属性的访问都会调用用户自定义的__getattribute__()方法, 性能…