Я практикую наследование Python и написал этот код,
class College:
def __init__(self,clgName = 'KIIT'):
self.collegename = clgName
def showname(self):
return(self.collegename)
class Student(College):
def __init__(self,studentName,studentRoll):
super().__init__(self)
self.studentname = studentName
self.studentroll = studentRoll
def show(self):
print(self.studentname,self.studentroll,self.collegename)
p = Student('ram',22)
p.show()
Я хочу, чтобы ответ был похож на ram 22 KIIT
, но его показ ram 22 <__main__.Student object at 0x00000238972C2CC0>
так что я делаю не так? и как я могу распечатать желаемый O / P?
пожалуйста, направляй меня, спасибо заранее.
@ Дэниэл Роузман Спасибо, сэр, что прояснил мои сомнения, поэтому, если я хотел бы получить такой же результат тем способом, который я должен сделать, а не его показом super.__init__()
нужен позиционный аргумент
class College:
def __init__(self,clgName):
self.collegename = clgName
def showname(self):
return(self.collegename)
class Student(College):
def __init__(self,studentName,studentRoll):
super().__init__()
self.studentname = studentName
self.studentroll = studentRoll
def show(self):
print(self.studentname,self.studentroll,self.collegename)
c=College('KIIT')
c.showname()
p = Student('ram',22)
p.show()