Я некоторое время программировал на Python и создал несколько утилит, которые я часто использую. Всякий раз, когда я начинаю новый проект, я начинаю писать, и, когда мне нужны эти утилиты, я копирую их с того места, где, как мне кажется, последняя версия конкретной утилиты. У меня достаточно проектов сейчас, когда я теряю след, где находится последняя версия. И я обновлю один из этих сценариев, чтобы исправить проблему в конкретной ситуации, а затем хочу, чтобы он был распространен на все другие проекты, использующие этот сценарий.

Я думаю, что лучший способ решить эту проблему - создать каталог в каталоге site-packages и поместить туда все мои служебные модули. А затем добавьте этот каталог в список каталогов sys.path.

Это лучший способ решить эту проблему?

Как изменить мою установку Python так, чтобы этот каталог всегда добавлялся в sys.path, и мне не нужно явно изменять sys.path в начале каждого модуля, который должен использовать эти утилиты?

Я использую Python 2.5 для Windows XP и Wing IDE.

1
Curt 30 Июл 2010 в 07:02

3 ответа

Лучший ответ

Каталог site-packages в каталоге lib Python всегда должен быть добавлен в sys.path, поэтому вам не нужно ничего менять, чтобы позаботиться об этом. На самом деле это то, что я бы порекомендовал, чтобы вы сами сделали пакет Python в этом каталоге и поместили туда свой код.

На самом деле, вы можете подумать об упаковке ваших утилит с помощью distutils. Все, что влечет за собой, это в основном создание файла setup.py в корне дерева папок, где вы храните код своей утилиты. Документация distutils, с которой я только что связался, описывает, что должно быть в setup.py. Затем из этого каталога запустите

python setup.py install

Установить код вашей утилиты в системный каталог site-packages, автоматически создав необходимую структуру папок. Или вы можете использовать

python setup.py install --user

Установить его в папку site-packages в своей учетной записи.

4
David Z 30 Июл 2010 в 03:09

Если его нет в site-packages, вы можете добавить файл с расширением .pth в каталог site-packages.

Файл должен иметь один путь на строку, который вы хотите включить в sys.path

0
Joe Koberg 30 Июл 2010 в 03:12

Добавьте свой каталог в PYTHONPATH переменная окружения. Для окон см. Эти инструкции. ,

1
ars 30 Июл 2010 в 03:06