#python #class #pickle
#python #класс #рассол
Вопрос:
допустим, я получил некоторые маринованные данные в структуре класса, например, следующие:
class dog:
def __init__(self, nameDog, age):
self.nameDog = namedog
self.age = age
self.favoriteToys = {}
class toy:
def __init__(self, nameToy):
self.nameToy = nameToy
self.color = ''
Теперь я хочу загрузить данные и использовать их в новой структуре с дополнительным атрибутом, основанным на старой структуре.
class dog:
def __init__(self, nameDog, age):
self.nameDog = namedog
self.age = age
self.breed = ''
self.favoriteToys = {}
class toy:
def __init__(self, nameToy):
self.nameToy = nameToy
self.color = ''
Есть ли простой способ сделать это?
Ответ №1:
Возможно, вы захотите создать класс, производный от другого. Это называется наследованием наследования Python.
class Rottweiler(dog):
def __init__(self, nameDog, age):
super().__init__(nameDog, age)
self.breed = ''
Используя super()
функцию, ваш дочерний класс (Rottweiler) автоматически унаследует методы и свойства от своего родителя (dog).