我是剛剛開始學習Python的Java人。就拿這個例子:使用__init__繼承Python中的屬性
class Person():
def __init__(self, name, phone):
self.name = name
self.phone = phone
class Teenager(Person):
def __init__(self, name, phone, website):
self.name=name
self.phone=phone
self.website=website
我敢肯定有很多冗餘代碼(我知道在Java中,有一段代碼位大量裁員以上)。
哪些部分對於哪些屬性已經從父類繼承而言是多餘的?
請注意,如果您使用的是Python 2.x,則必須將'object'明確列出爲'Person'的基類以便使用'super()'。否則,你必須使用'Person .__ init__'形式。 – chepner 2012-01-13 17:17:58
@chepner你能提供一個參考嗎?我找不到一個。 – murgatroid99 2012-01-13 17:19:08
http://docs.python.org/library/functions.html#super表示super()僅支持新樣式類,它在Python 2.x中是那些從'object'繼承的類。 – chepner 2012-01-13 17:21:59