Sep-28-2021, 11:55 AM
(This post was last modified: Sep-28-2021, 11:55 AM by deanhystad.)
A subclass needs __init__ if it needs to initialize attributes that are not inherited from the base class or needs to initialize existing attributes differently.
class Animal(): varA = "---" def __init__(self, name, age, sound='...'): self.name = name self.age = age self.sound = sound print(self.name + " has been created") def talk(self): print(self.name, "Say :", self.sound) def myinfo(self): print(self.varA + " Info name: " + self.name + " | Info age: " + str(self.age) + " " + self.varA) class Cat(Animal): def __init__(self, name, age): super().__init__(name, age, 'Meow') class Bird(Animal): def __init__(self, name, age): super().__init__(name, age, 'BrrBrr')