Helloooo!
Обычно циклический импорт означает структурную проблему в коде, но я не вижу другого способа исправить это. Это мой текущий случай:
У меня есть два класса: Project
и Preset
Project
имеет метод, который будет генерировать Preset
, что-то вроде:
from preset import Preset
class Project():
def __init__(self, project):
self._project_name = project
def get_preset(self, preset_name):
return Preset(preset_name, self._project_name)
Затем у меня есть класс Preset
, которому также нужно имя Project
для инициализации. Что-то вроде:
from project import Project
class Preset():
def __init__(self, preset_name, project_name):
self._project = Project(project_name)
Вообще говоря, я всегда буду создавать классы Presets
через Project
с помощью метода get_preset
, но я также хочу дать возможность создать Preset
напрямую, без необходимости сначала создавать Project
.
Есть идеи, чтобы избавиться от этой круговой рекурсии?
Спасибо !!