类的内置 attr 方法
#类的内置 attr 方法: # __getattr__ # __setattr__ # __delattr__ # __getattr__ #到调用一个类不存在数参数时,将执行__getattr__内置方法 class test(): def __init__(self,num): self.num = num def __getattr__(self, item): return "getattr 执行~~~~" def __delattr__(self, item): print( "delattr执行.....") def __setattr__(self, key, value): super().__setattr__(key,value) print("setattr执行.....") t1 = test('dsadsa') # __getattr__ # #类中存在的属性访问! print(t1.num) # #类中不存在的属性访问,执行__getattr__ print(t1.xxxx) # # __delattr__ # #在删除一个类属性的时候,执行delattr操作(即使不存在的数值,也会执行) # 本质是: # def __delattr__(self,item): # self.__dict__.pop(item) del t1.num del t1.xxx # __setattr__ # 在类被实例化以及设置新的属性参数的时候将会执行 # 本质是: # def __setattr__(self, key, value): # self.__dict__[key] = value # 将属性添加到类的__dict__字典内 # 若这个方法被修改后,将影响__dict__添加属性 t2 = test("sssssss") print(t2.__dict__) t1.num = "2333"