У меня есть приложение, состоящее из базового приложения, которое содержит несколько модулей. Базовое приложение считывает файл параметров в хэш конфигурации, и я хочу поделиться им по всем моим модулям.
В настоящее время я передаю "родительский" объект до модулей, а затем эти модули делают такие вещи, как self.parent.config, для получения конфигурации.
Однако, поскольку в иерархии модулей имеется несколько уровней, я обнаружил, что делаю такие вещи, как self.parent.parent.config, который начинает выглядеть плохо.
Каковы некоторые лучшие шаблоны для совместного использования объекта конфигурации в приложении и его модулях? Я думаю о наличии модуля "config", который в основном создает глобальную конфигурационную переменную, которая может быть установлена базовым приложением, а затем импортирована и доступна другим модулем, но я не уверен, что использование таких глобальных таблиц является плохой практикой для других причины.
Я достаточно новичок в Python, поэтому будьте красивыми =)