我創建了一個基類:如何延長Python類初始化
class Thing():
def __init__(self, name):
self.name = name
我要擴展類,並添加到初始化方法,所以這SubThing
既有name
和time
財產。我該怎麼做?
class SubThing(Thing):
# something here to extend the init and add a "time" property
def __repr__(self):
return '<%s %s>' % (self.name, self.time)
任何幫助都會很棒。
而不是在'super'中引用'SubThing',你可以做'super(self .__ class__,self).__ init __(* args,** kwargs)'。這也適用於使用'type()'動態創建的類。 – miki725
我得到這個錯誤與任何一種解決方案:'TypeError:必須是類型,而不是classobj' - 錯誤是由我的超級行。 – TheChymera
@TheChymera看看Jesse寫了些什麼:「確保從對象中獲得基類的子類,因爲超類不能用於舊類」 – Acsisr