python類中的一些神奇方法
阿新 • • 發佈:2018-01-09
strong style self. 返回 test int error: turn 引用
__str__:用於在print(對象)時,直接打印__str__的返回值
1 class Animal: 2 def __init__(self, name): 3 self.name = name 4 def __str__(self): 5 return self.name 6 7 d = Animal("dog") 8 print(d)
__fun_name:私有方法
1 class Animal: 2 def __init__(self, name): 3 self.name = name4 def eat(self): 5 self.__test() 6 print("吃東西") 7 #test為私有方法,不能在類外部調用 8 def __test(self): 9 print("debug") 10 11 d = Animal("dog") 12 # 提示 AttributeError: ‘Animal‘ object has no attribute ‘__test‘ 13 # d.__test() 14 d.eat()
__del__:對象銷毀時調用的方法
1 class Animal:2 def __init__(self, name): 3 self.name = name 4 def __del__(self): 5 print("---go die---") 6 7 d = Animal("dog") 8 dd = d 9 del d #僅僅刪除一個引用計數,引用計數為0時才銷毀對象,並且調用__del__方法 10 del dd 11 print("******")
python類中的一些神奇方法