Я пытаюсь сделать мои модули доступными глобально
Структура файловой системы
main.py
module_static.py
folder/module_dynamic.py # this is example, but imagine 100s of modules
main.py
print('Loading module_static')
import module_static
module_static.test()
# Trying to make module_static available globally
globals()['module_static'] = module_static
__all__ = ['module_static']
print('Loading module_dynamic')
import sys
sys.path.append('./folder/')
import module_dynamic
module_dynamic.test()
module_static.py
def test():
print(' -> This is module_static')
module_dynamic.py
def test():
print(' -> This is module_dynamic')
module_static.test()
Работает main.py создает следующий поток выполнения main.py -> module_dynamic.py -> module_static.py
Итак, как вы можете видеть:
- Загрузка модулей работает правильно
- Однако, несмотря на попытку сделать
module_static
доступным глобально, он не работает module_dynamic.py бросковошибка о том, что module_static
не существует
Как сделать module_static.py
доступным в module_dynamic.py
(в идеале, без необходимости писать дополнительный код в module_dynamic.py
)?