我遇到以下代码的TypeError:
class Student:
def __init__(self, name,age,subject):
self.name = name
self.age = age
self.subject = subject
def subjchoosen(self):
print("The subject choosen is",self.subject )
class Science(Student):
def __init__(self):
super().__init__(name, age,subject)
super().subjchoosen()
name = "Test"
age = 12
subject = "Science"
Sc=Science(name,age,subject)
如果我创建的对象是Sc= Science()
,而没有传递任何参数,我将得到输出。有人能解释一下为什么会发生这种情况吗?
1条答案
按热度按时间eyh26e7m1#
您还必须将
name, age, subject
参数放入Science
类的__init__
方法中,因为现在它只需要self。正确的方法是: