1. 程式人生 > >python3.6 子類的__init__調用父類的__init__

python3.6 子類的__init__調用父類的__init__

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__