Выдуманный упрощенный пример. Допустим есть класс
Car, в котором есть аргумент
tanker_path(НЕбак, а расстояние) где считается сколько хватит бензина. И есть отдельный класс
Road, в котором есть аргумент
length - длина дороги.
Car.tanker_path - будет зависеть от
Road.length.
Как такую зависимость правильно реализовать? Так делают или это изначально неправильная схема?
Самый простой вариант вижу такой - выносить переменную length в глобальную область. Пока писал ещё один вариант придумал - в классе
Car нужен отдельный аргумент, например
Car._road где значением будет другой класс
Road(композиция?), откуда уже и будет браться длина дороги
class Ship:
def __init__(self, x=None, y=None):
self.x, self.y = x, y # нужна проверка, будет ошибка если не влезает в Space.size
class Space:
def __init__(self, size):
self.size = size
sp = Space(50)
sh = Ship(100, 100) # должна быть ошибка т.к. не влезает в пространство