您好,我對通過Python的類中的方法__init__
方法有疑問。人們會說這是類實例正在作爲__init__
方法中的第一個參數在這裏傳遞。Python中類的__init__方法中的self是什麼?
Class A():
def __init__(self):
pass
def check(self):
pass
a = A()
a.check()
因爲我們理解,此處「A」爲被傳遞的第一個參數的方法__init__
。但是在這裏我們剛剛創建了類A的實例。至於其他方法檢查,當我們要做a.check()
時,會理解好,我們在這裏調用一個類的實例來調用,以便它被傳遞。但對於__init__
方法,我們沒有做任何事情,只是創建了實例。那麼它是如何通過的。
舉一個例子, a = a + 10 ...直到這個表達式纔開始初始化。與__init__
一樣。
我們剛剛在這裏創建了實例a = A()。那麼會通過這裏。
我知道我的問題有點棘手。但是這個問題在我的採訪中被問到了。
請有人可以幫忙嗎?
除'__new__'被覆蓋(或使用元類),禁用此行爲。構造對象時,__init__'總是被**調用。它像一個*構造函數*(就像在Java中一樣)。 –
hi @WillemVanOnsem ..感謝您的回答,我知道這是與java相同的構造函數。但我的問題有點不同。喜歡瞭解自我如何作爲第一個參數被傳遞,如果我們沒有用這個參數來調用這個方法。 – Anendra