python3.6 子類的__init__調用父類的__init__
阿新 • • 發佈:2018-02-07
app ini program span 變量 bsp 通過 import 初始化
python3.6 子類的__init__調用父類的__init__
父類
class worker: def __init__(self): self.a=1 self.b=2 if __name__=="__main__": worker()
子類
from test.test02 import worker class workertet(worker): def __init__(self): worker.__init__(self) c = 3 d = 4 print(self.a) print(self.b) print(c) print(d) def test(self): print(self.a) print(self.b) if __name__=="__main__": workertet()
輸出:
C:\Users\lys-tbc\AppData\Local\Programs\Python\Python36\python.exe D:/pythonwakce/mysqltest/test/test03-init.py
1
2
3
4
Process finished with exit code 0
如此設計的原因是,在子類中需要獲得超類的成員和方法,而通過在子類的__init__方法中調用超類的__init__方法,並手動給它傳遞指向子類的self值,可以使超類的__init__方法將所初始化的變量設置成子類的變量,這樣,就可以在子類中直接訪問超類的變量了
python3.6 子類的__init__調用父類的__init__