Tôi có Python 2,7 mã sau:Python siêu __init__ thừa kế
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()
Tôi đang cố gắng để mở rộng phương pháp __init__()
để khi tôi nhanh chóng một 'mắt' nó một loạt các công cụ khác (tự. some_other_defined_stuff()), ngoài những gì Frame thiết lập. Frame.__init__()
cần chạy trước.
tôi nhận được lỗi sau:
super(Eye, self).__init__()
TypeError: must be type, not classobj
Mà tôi không hiểu nguyên nhân logic của. Ai đó có thể giải thích được không? Tôi thường chỉ gõ 'siêu' trong ruby.
'Khung' phải mở rộng' đối tượng'. 'super' sẽ chỉ hoạt động trên các lớp kiểu mới. – That1Guy