Я новичок в python, и я столкнулся с этой проблемой, пытался найти ее в Google, но не смог найти ответ.
, поэтому мои занятия выглядят так:
Animal
| |
Cat Pet
\ /
home
И проблема, с которой я сталкиваюсь, заключается в том, что я не знаю, как передать аргументы, чтобы в HomeCat были также все поля Cat, Animal и Pet. насколько я понимаю, он должен вызывать HomeCat -> Cat -> Pet> Animal Мой код:
class Animal:
def __init__(self, dateOfBirth, animalType, name, numOfLegs):
self.dateOfBirth = dateOfBirth
self.animalType = animalType
self.name = name
self.numOfLegs = numOfLegs
def __str__(self):
return 'Birth : {} Type:{} name:{} numOfLeGS:{} '
class Pet(Animal):
def __init__(self, dateOfBirth, animalType, name, numOfLegs, lastVetCheck):
Animal.__init__(self, dateOfBirth, animalType, name, numOfLegs)
self.lastVetCheck = lastVetCheck
def __str__(self):
return Animal.__str__(self) + ' Last vet check:{} '.format(self.lastVetCheck)
class Cats(Animal):
def __init__(self, dateOfBirth, animalType, name, numOfLegs, mustache):
Animal.__init__(self, dateOfBirth, animalType, name, numOfLegs)
self.mustache = mustache
def __str__(self):
return Animal.__str__(self) + ' mustache length:{} '.format(self.mustache)
class HomeCat(Cats, Pet):
def __init__(self, dateOfBirth, animalType, name, numOfLegs, lastVetCheck, mustache):
super().__init__(dateOfBirth, animalType, name, numOfLegs, lastVetCheck, mustache)
def __str__(self):
return Animal.__str__(self) + Cats.__str__(self) + 'Last vet check: {}'.format(self.lastVetCheck)
c = HomeCat("1995", "Cat", "Omri", "4", "26/2/2022", 5)
print(c)