2015-11-20 1 views
0

Я имею следующую структуру папокИмпорта питон файлы из другой директории без 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 ко всем тестовым файлам.

+0

Можете ли вы удалить требование для работы в любом месте? Вы можете потребовать, чтобы test.py хранился в вашем каталоге проекта и запрашивал целевой каталог во время выполнения. Сначала вы импортируете src, затем вызовите os.chdir ('/ run/script/here /') –

ответ

Смежные вопросы