类的魔法方法
構造和析構
構造
類定義時,有時候寫__init__方法,有時候卻沒有,這是為什么呢?__init(self,[,...]) 答:需求!__new__(cls[,...])####重寫str字符串類#### calss UpStr(str):def __new__(cls,string): #string會原封不動的傳給init方法string = string.upper()return str.__new__(cls,string)s = UpStr("I love fishC") s析構
__del__ 當多有對象的引用都被銷毀時,才會調用__del__函數算數運算
簡單定制
基本要求: 定義一個計數器類 start和stop方法代表啟動計時和停止計時 假設計時器對象t1,print(t1)和直接調用t1均顯示結果 當計時器未啟動或已經停止計時,調用stop方法會給予溫馨的提示 兩個計時器對象可以進行相加:t1+t2 只能使用提供的有限資源完成需要資源: 使用time模塊的localtime方法獲取時間 time.localtime返回struct_time的時間格式 表現你的類:__str__和__repr__總結
- 上一篇: 类和对象:给大家介绍对象
- 下一篇: 描述符:property 迭代器