【发布时间】:2018-05-27 21:59:57
【问题描述】:
这里对 python 和一般编程来说是相当新的,我有以下示例,在该示例中,我试图从 Parent 类继承默认值,从而可以创建两个对象。 怎么做又好又干净? - 尝试使用 *args 和 **kwargs 进行试验,但出现了不同的错误。
class Person(object):
def __init__(self, name="Jane Doe", age="30", gender="female"):
self.name = name
self.age = age
self.gender = gender
self.goal = "My goal is: Live for the moment!"
class Student(Person):
def __init__(self, name, age, gender, prev_org="The School of Life", skip_d=0):
super(Student, self).__init__(name, age, gender,)
self.prev_org = prev_org
self.skip_d = skip_d
self.goal = "Be a junior software developer."
john = Student('John Doe', 20, 'male', 'BME')
student = Student()
【问题讨论】:
-
使用类装饰器可能可以做到这一点,但话又说回来,这表明存在设计问题。
标签: python inheritance default init super