当我将类继承到Sports中并在init方法中定义值时,我可以打印类Student的名称。 但我不知道如何打印创建学生班级时给出的姓名,而不在体育课中定义姓名
当我注释掉Student.__init__(self, 1, "name1", "addr1", 123456789, "std2@gmail.com", 1, 2021, "english")
当创建对象时,我想打印这些值
class Student:
def __init__(self, sid, name, addr, phno, mailid, sec, year, sub):
self.sid = sid
self.name = name
self.addr = addr
self.phno = phno
self.mailid = mailid
self.sec = sec
self.year = year
self.sub = sub
def printStudent(self):
print("name",self.name,"sid",self.sid,"sec",self.sec,"year",self.year,"sub",
self.sub, "address",self.addr,"mailid",self.mailid,"phno",self.phno)
class Sports(Student):
def __init__(self, nofsports, nofawards):
Student.__init__(self, 1, "name1", "addr1", 123456789, "std2@gmail.com", 1, 2021,
"english")
self.nofsports = nofsports
self.nofawards = nofawards
def printSports(self):
print("name", self.name)
s1 = Student(2,"name2","addr2",1221232332,"std1@gmail.com",1,2020,"math")
s2 = Sports(2, 2)
s2.printSports()
当我注释掉Student.__init__(self, 1, "name1", "addr1", 123456789, "std2@gmail.com", 1, 2021, "english")
当创建对象时,我想打印这些值
顺便说一句,我正在学习继承和python新手,我不明白为什么python不能像我继承的那样打印Student
类的实例,可能是因为它不是class属性?请让我知道
通常,子类
__init__
方法获取其超类的所有参数,以及子类需要的任何附加参数。然后它可以将公共参数传递给超类的__init__
方法***
***
希望这将帮助您了解更多,创建子类的对象而不是创建基类的对象。此外,基类被设置为单例类,因此只存在一个对象
相关问题 更多 >
编程相关推荐