Skip to content

Система управления пакетми pip


Команды из статьи

  • python get-pip.py - если не установлен PIP, то эта команда устанавливает
  • pip install --upgrade pip - обновление PIP'а (сам себя)

Управление пакетами

  • pip install <packet_name> - установка пакета
  • pip install --upgrade <packet_name> - обновление пакета
  • pip show <packet_name> - информация о пакете
  • pip check - проверка установлены ли все зависимости для установленных пакетов
  • pip list - список установленных пакетов

Система управления пакетами - это такой набор программных средств, который позволяет управлять процессом установки, удаления и обновления компонентов программного обеспечения.

Почему нельзя без него обойтись? Вообщето можно и раньше обходились всегда за неимением их. Но проблема состоит в том, что пакет - это понятие достаточно ёмкое и не зависящее от размера последнего и его архитектуры. Пакет может представлять собой какой-то набор функций в виде исходного кода (такая поставка характерна больше для языков программирования), так и предварительно откомпилированные файлы (это касается установщиков ПО для операционных систем).

Соответственно, в мире открытого ПО мы имеем дело со свободой разработчика в отношении переиспользования кода - он может "прогуляться" по, например, GitHub и включить в свой проект чью-то программу. Может это сделать как копипастой, но это крайне непрофессионально и неудобно. Было бы неплохо иметь возможность прописать зависимости (что из ПО подключается к проекту) в каком-нибудь файле-манифесте и чтобы при установке у конечного пользователя они подгружались сами.

И такое есть у нас - это системы управления пакетами. Их существует огромное количество. Практически всякий раз, когда вокруг какого-то программного средства начинает формироваться сообщество, появляется и пакетный менеджер. Либо задействуется тот, который совместим с ПО сообщества. Это например, менеджеры операционных систем apt, rpm, yum, pacman для операционных систем; composer, gem, npm (адово чудовище...) - для языков программирования.

Ну а для Python существует pip. Как правило, он поставляется вместе с Python, работает так же как любой другой пакетник (pip install, pip install --ubgrade, pip show), поэтому на этом особо останавливаться не станем. А вот как организовать работу с ним и системой контроля версий или как автоматизировать разворачивание проекта в другом месте - это вопросы более важные.

О важности виртуального окружения

https://pypi.org/