類的內置 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"