I have written a subclass but I am confused how I can make a connection between the class and subclass. I am trying to print the information of the the employee and the manager but I could not. I would be grateful if someone can help me.class Information:
def __init__(self,first,last,pay):
self.first = first
self.last = last
self.pay = pay
def rise(self,bonus):
self.pay = self.pay + bonus
def __str__(self):
return "%s and %s and has a balance of %s" % (self.first,self.last,self.pay)
if __name__ == "__main__":
emp1 = Information("tom","jerry",999)
emp1.rise(89)
print (emp1)
from information import Information
class Manager(Information):
def __init__(self):
Information.__init__(self)
self.shift = shift
self.time = time
def __str__(self):
return Information.__str__(self)+str(self.time) + self.shift
if __name__ == "__main__":
information = Information()
print (information)
information.time(9)
information.title(morning)
print (Information)
Thank you.
What I have tried:
I have tried to write the class and sub class in two different files and wanted to connect them by import but that did not work.
解决方案In your subclass you are calling the Information class with the wrong parameters, and non-existent function names. Take a look at 9. Classes — Python 3.7.2 documentation[^].
class Information:
def __init__(self,first,last,pay):
self.first = first
self.last = last
self.pay = pay
def rise(self,bonus):
self.pay = self.pay + bonus
def __str__(self):
return "%s and %s and has a balance of %s" % (self.first,self.last,self.pay)
from information import Information
class Manager(Information):
def __init__(self,shift,time):
Information.__init__(self)
self.shift = shift
self.time = time
def __str__(self):
return Information.__str__(self)+str(self.time) + self.shift
if __name__ == "__main__":
emp = Information("tom","jerry",999)
emp.rise(89)
managerr = Manager("morning",9)
print (managerr)
print (emp1)