Есть ли в Python система управления пакетами / модулями? - PullRequest
142 голосов
/ 13 марта 2010

Есть ли в Python система управления пакетами / модулями, аналогично тому, как в Ruby есть рубины, где вы можете сделать gem install packagename?

Вкл. Установка модулей Python , я вижу только ссылки на python setup.py install, но для этого требуется сначала найти пакет.

Ответы [ 13 ]

3 голосов
/ 14 декабря 2017

Поскольку никто не упомянул pipenv здесь, я хотел бы описать свои взгляды, почему все должны использовать его для управления пакетами Python.

Как упомянул @ColonelPanic, существует несколько проблем с индексом пакетов Python и pip и virtualenv .

Pipenv решает большинство проблем с pip, а также предоставляет дополнительные функции.

Особенности Pipenv

Pipenv предназначен для замены pip и virtualenv, что означает, что pipenv автоматически создаст отдельную виртуальную среду для каждого проекта, что позволит избежать конфликтов между различными версиями Python / версиями пакетов для разных проектов.

  • Включает действительно детерминированные сборки, в то же время легко определяя только то, что вам нужно.
  • Генерирует и проверяет хэши файлов на наличие заблокированных зависимостей.
  • Автоматическая установка необходимых питонов, если доступен pyenv.
  • Автоматически находит ваш проект дома, рекурсивно, при поиске Pipfile.
  • Автоматически генерирует Pip-файл, если таковой не существует.
  • Автоматически создает virtualenv в стандартном местоположении.
  • Автоматически добавляет / удаляет пакеты в Pipfile, когда они не установлены / установлены.
  • Автоматически загружает файлы .env, если они существуют.

Если вы раньше работали над проектами Python, вы бы поняли, что эти функции упрощают управление пакетами.

Другие команды

  • check проверяет уязвимости безопасности и утверждает, что текущая среда соответствует требованиям PEP 508. (, что, на мой взгляд, является отличной функцией, особенно после этого - Вредоносные пакеты на PyPi )
  • graph покажет вам график зависимостей ваших установленных зависимостей.

Подробнее об этом можно прочитать здесь - Pipenv .

Установка

Вы можете найти документацию по установке здесь

PS: Если вам понравилась работа с пакетом Python запросов , вам будет приятно узнать, что pipenv от того же разработчика Kenneth Reitz

0 голосов
/ 22 февраля 2019

Поэзия - это то, что вы ищете. Он заботится об управлении зависимостями, виртуальных средах, запуске.

0 голосов
/ 04 января 2019

В 2019 Стихи - менеджер пакетов и зависимостей, который вы ищете.

https://github.com/sdispater/poetry#why

Это современно, просто и надежно.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...