Я имею следующую структуру папокИмпорта питон файлы из другой директории без sys.path.append или изменений PATH
project
+folder src
+file main.py
+file __init__.py
+folder tests
+file test.py
+file __init__.py
+file __init__.py
Всех __init__
файлы пусты.
Теперь я хочу иметь возможность запускать test.py
форму где угодно, это важно.
test.py
называет
import src
, потому что она нуждается в функции от main.py
. Это приводит к ошибке:
ImportError: no module named src
Решения, которые я нашел включать в себя добавление команды sys.path.append
к test.py
или добавления СРК папки в моей переменной PATH
окружения - не существует никакого другого пути?
Я не могу заставить каждого пользователя изменить их PATH
, и я не могу добавить команды sys.path.append
ко всем тестовым файлам.
Можете ли вы удалить требование для работы в любом месте? Вы можете потребовать, чтобы test.py хранился в вашем каталоге проекта и запрашивал целевой каталог во время выполнения. Сначала вы импортируете src, затем вызовите os.chdir ('/ run/script/here /') –