|
|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
class Person:
def __init__(self,name,gender):
self.name=name
self.gender=gender
class Teacher:
def __init__(self,age):
self.age=age
class Student(Person,Teacher):
def __init__(self,name,gender,score,age):
super(Student,self).__init__(name,gender,age)
self.score=score
T=Student('dafs','adfa',150,19)
Traceback (most recent call last):
File "<pyshell#5>", line 1, in <module>
T=Student('dafs','adfa',150,19)
File "C:/Users/hasee/Desktop/b.py", line 13, in __init__
super(Student,self).__init__(name,gender,age)
TypeError: __init__() takes 3 positional arguments but 4 were given
为什么会出现这些错误?
我怀疑是super的时候出现的问题,我改了你super那边的代码,就没有问题了:
class Person:
def __init__(self,name,gender):
self.name=name
self.gender=gender
class Teacher:
def __init__(self,age):
self.age=age
class Student(Person,Teacher):
def __init__(self,name,gender,score,age):
Person.__init__(self,name,gender)
Teacher.__init__(self,age)
self.score=score
T=Student('dafs','adfa',150,19)
print(T.name)
|
|