Как лучше всего включать сторонние библиотеки в программу на Python? - PullRequest
3 голосов
/ 03 мая 2011

Добрый день.

Я пишу небольшую или среднюю программу на Python для своей работы.Для выполнения этой задачи мне необходимо использовать библиотеки Excel xlwt и xlrd , а также библиотеку для запросов к базам данных Oracle, которая называется cx_Oracle .Я разрабатываю проект с помощью системы контроля версий, а именно CVS.

Мне было интересно, что является стандартным способом организации сторонних библиотек вокруг проекта Python.Должны ли библиотеки xlwt, xlrd и cx_Oracle храниться в каталоге, таком как / usr / local / lib / python, который предположительно имеет свое место в PYTHONPATH?Или же сторонние библиотеки вместо этого должны быть включены в тот же каталог, что и исходный код проекта, эффективно «поставляемый» с проектом, таким образом сценарий python является более независимым от платформы.

Япросто ищу лучшие практики, так как я прихожу с Java и плохо знаком с Python.

Заранее спасибо,
ktm

1 Ответ

5 голосов
/ 03 мая 2011

У вас обычно есть два варианта (как вы могли бы узнать из Java).

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

Лучшим способом обработки зависимостей является документирование зависимостей ваших приложений. Один из способов сделать это - определить файл require.txt в формате pip, который затем можно запустить с помощью pip install -r requirements.txt, который продолжит установку всех зависимостей. Сборка - это еще один вариант, с которым вы можете пойти.

...