魔法方法
__dict__属性:查看对象内部所有属性名和属性值组成的字典
__getattribute__:
1.__getattribute__(self,*args,**kwgs)中传入的参数是属性名,不是属值,很多初学者有误区。
2.使用类名调用类属性时,不会经过__getattribute__方法,只争取实例对象对属性的调用,包括调用类属性
3.__getattribute__是属性拦截器,属性调用会传入处理,最后要有返回值,将传入属性处理后返回给调用者
hasattr、getattr、setattr
使用场景:不确定用类的什么属性的时候可以用,传入一个字符串就能访问类对象属性。
使用场景:以字符串的方式输入对象属性,并对该属性对应的属性值进行修改(若属性不存在,则会为该对象创建属性)