Мой проект Python использует различные виды библиотек. Что такое протокол, если у конечного пользователя не было ни одного, ни одного из них?

Должно ли всплыть окно и сообщить ему / ей, какой пакет и версию загрузить в его / ее среде? Или я должен включить библиотеки в свой проект?

Как правильно действовать?

17
Kepler 186 2 Май 2019 в 16:17

3 ответа

Лучший ответ

Каким бы ни был ваш проект, вы можете попробовать превратить его в пакет Python, который установит конечный пользователь. Как это работает

В корневой каталог вашего пакета вы должны включить setup.py. Вы можете включить в этот файл список требований / зависимостей (ключ install_requires), которые будут установлены вместе с вашим пакетом при его установке конечным пользователем.

Конечный пользователь может затем использовать pip для установки вашего пакета, например

pip install YourPackage

И все зависимости, перечисленные в setup.py, будут установлены первыми.

Кроме того, как @Devesh Kumar Singh указано в его комментарий, вы также можете включить файл require.txt. Затем пользователь может установить с помощью этого файла

pip install -r requirements.txt YourPackage

См. это руководство по созданию пакета python, документация по setuptools

14
Mooseman 2 Май 2019 в 19:26

Вот где упаковка проекта Python в модуль пригодится modules Мы включаем файл requirements.txt, который содержит все требования к модулю Python, необходимые для этой библиотеки Python, и устанавливает их автоматически при настройке модуля.

Хорошим учебным пособием по настройке вашего модуля для распространения является Структурирование вашего проекта

1
Devesh Kumar Singh 2 Май 2019 в 13:26

Другой вариант: вы можете использовать PyInstaller для замораживания (упаковки) приложений Python в автономные исполняемые файлы под Windows, GNU / Linux, Mac OS X, FreeBSD, Solaris и AIX.

Быстрый запуск PyInstaller

Это сработало очень хорошо для меня. Действительно, вам не нужно беспокоиться о том, установлен ли у конечного пользователя Python.

4
user11293039 2 Май 2019 в 16:18