这是我的代码:
class Person:
def __init__(self, name):
self.name = name
class Student(Person):
def register(self, school):
pass
def payfee(self, money):
pass
def chooseClassAndGrand(self, obj):
pass
class Teacher(Person):
pass
如果我不想重写class
方法,我想在Student类中添加一个__init__()
实例属性,如何在Student类代码中添加它?
答案 0 :(得分:2)
您无需重写__init__
。假设您在创建Person
的实例时需要调用__init__
的{{1}}功能,您可以在Student
__init__
函数内使用super
关键字{1}}:
Student
如果您使用的是python< 3.0,你可以使用
class Student(Person):
def __init__(self):
super().__init__() # python3.0+
self.classAndGrade = ...
...
这是最简单的方法。
答案 1 :(得分:0)
添加到COLDSPEED,您还可以使用以下内容添加属性:
class Student(Person):
def __init__(self, name, classAndGrade):
Person.__init__(self, name)
self.classAndGrade = classAndGrade
...