Уведомления

Группа в Telegram: @pythonsu

#1 Март 1, 2012 19:50:08

Piton23
От:
Зарегистрирован: 2011-10-17
Сообщения: 139
Репутация: +  5  -
Профиль   Отправить e-mail  

sys.path + mydir

Привет всем.

Нужно импортировать модуль из “директории отличной от sys.path”.

Пока нашел только одно решение. Типа в начале скрипта добавить в список sys.path.append('C:\\mydir')

..и дальше уже импорт происходит успешно. НО мне нужно явно где-то добавить в конфиг файле этот путь, а не в скрипте через append. Зачем? Ну потому что проект разделен на большое количество файлов и в каждом файле прописывать append как то не хорошо. А если изменится директория моих модулей, в каждом ж не поправлять?

Кароче, есть ли решение добавить в sys.path своей директории?

Офлайн

#2 Март 1, 2012 20:23:42

alexzander77
От:
Зарегистрирован: 2009-01-27
Сообщения: 46
Репутация: +  1  -
Профиль   Отправить e-mail  

sys.path + mydir

.pth файл в директории, уже прописанной в систем.пас
в site-packages, например

http://docs.python.org/install/index.html#inst-search-path
The most convenient way is to add a path configuration file to a directory that’s already on Python’s path, usually to the …/site-packages/ directory. Path configuration files have an extension of .pth, and each line must contain a single path that will be appended to sys.path.



Офлайн

#3 Март 1, 2012 21:36:56

Андрей Светлов
От:
Зарегистрирован: 2007-05-15
Сообщения: 3137
Репутация: +  14  -
Профиль   Адрес электронной почты  

sys.path + mydir

Есть еще sitecustomize.py — добавьте его в папку, где находятся ваши запускаемые скрипты.
Но это — костыль.
Лучше освойте создание setup.py файлов.



Офлайн

#4 Март 2, 2012 05:24:22

Piton23
От:
Зарегистрирован: 2011-10-17
Сообщения: 139
Репутация: +  5  -
Профиль   Отправить e-mail  

sys.path + mydir

Спасибо за советы, засунул .pth - и модули стали доступны для загрузки. Создание setup освою, чуть позже.

Есть еще одно решение. Вчера с товарищем обговорили. Он посоветовал в PYTHONPATH добавить переменную, а именно:
Пример для WinXP: мой компьютер -> свойства -> Переменные среды -> Системные переменные
Там создаем новую переменную с именем PYTHONPATH и значением нужной директории, к примеру “C:\\mydir”.

Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version