,我有以下的Python 2.7的代碼:Python的超級__init__繼承
class Frame:
def __init__(self, image):
self.image = image
class Eye(Frame):
def __init__(self, image):
super(Eye, self).__init__()
self.some_other_defined_stuff()
我想,這樣當我實例化一個「眼」它做了一堆其他的東西(自延長__init__()
方法。 some_other_defined_stuff()),以及Frame設置的內容。需要先運行Frame.__init__()
。
我得到以下錯誤:
super(Eye, self).__init__()
TypeError: must be type, not classobj
我不明白的邏輯原因。有人可以解釋嗎?我習慣於在ruby中輸入'super'。
'Frame'必須擴展'object'。 'super'只適用於新式課程。 – That1Guy