1
傳遞給超(參數)參數.__的init __(,覆蓋的構造,並在同一時間實現它,你可以使用這樣的事情的Python:誰擁有根據蟒蛇繼承)
class Dog :
def __init__(self, name) :
self.name = name
print("This is a dog named {}".format(self.name))
class Bingo(Dog) :
def __init__(self, name) :
super().__init__(self.name)
但我注意到一些代碼,我遇到了,超級自身攜帶的說法一樣,
super(self, name).__init__()
,所以如果我可能會問,哪裏是傳遞給說法,是它的父類還是什麼。我覺得很難總結我的頭在這,我居然在PyQt的和PySide
'super()'很可能來自'Python 3.x'代碼,其中參數是可選的。在'Python 2.x'中,你必須編寫'super(,)'來獲得相同的效果。但是,在這兩種情況下,都將參數傳遞給構造函數本身(即'__init __()')。 –
isedev
[爲什麼是Python 3.x的super()魔法?](http://stackoverflow.com/questions/19608134/why-is-python-3-xs-super-magic) –
'self'和' name'是super()對象的參數,實際上是傳入的錯誤參數。第一個參數必須是類型(所以類),第二個參數必須是第一個參數的實例。 –