Просто наследуйте и пользователь super
вызывает родительский инициализатор:
class DailyOrders:
def __init__(self, day):
self.orders = []
# ...
class EggOrder(DailyOrders):
def __init__(self, day, eggs=0, name=""):
super().__init__(day)
# Now self.orders is available.
Имейте в виду, что если родительский инициализатор получает какой-либо параметр, дочерний элемент должен также получить его, чтобы иметь возможностьпередайте его.
Не предоставляя параметр дня ...
Если вы не хотите предоставлять параметр дня, у вас должен быть другой класс с интерфейсом / функциональностью, который является общим для других,и наследовать от такого базового класса:
class BaseOrders:
def __init__(self):
self.orders = []
# ...
class DailyOrders(BaseOrders):
def __init__(self, day):
super().__init__()
# Now self.orders is available.
self.day = day
# ...
class EggOrder(BaseOrders):
def __init__(self, eggs=0, name=""):
super().__init__()
# Now self.orders is available.