我是刚刚开始学习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