Сообщить об ошибке.

PIP - система управления пакетами

pip - система управления пакетами, которая используется для установки и управления программными пакетами, написанными на Python. Много пакетов можно найти в Python Package Index.

Начиная с Python версии 3.4, pip поставляется вместе с интерпретатором языка Python. Если pip отсутствует, то его можно установить двумя способами:

  • при помощи модуля ensurepip, который обеспечивает поддержку начальной загрузки pip в виртуальную среду или существующую установку Python
  • при помощи скрипта установки get-pip.py, который можно скачать при помощи утилиты bash wget с сайта https://bootstrap.pypa.io/:
$ python3 -m ensurepip

$ wget https://bootstrap.pypa.io/get-pip.py
$ python3 get-pip.py --user

Не забудьте обновить pip после установки:

#В Linux или macOS
$ pip3 install -U pip
# В Windows
> python3 -m pip install -U pip

Если вы не можете запустить pip команду напрямую (возможно, из-за отсутствия пути до директории с Python в системной переменной PATH), вы можете запустить pip через интерпретатор Python:

$ python3 -m pip <pip arguments>

Установка пакетов

pip поддерживает установку пакетов из Python Package Index, локальных репозиториев и напрямую из дистрибутивных файлов.

# новейшая версия
$ pip3 install SomePackage
# определенная версия
$ pip3 install SomePackage==1.0.4
# минимальная версия
$ pip3 install SomePackage>=1.0.4

pip предоставляет возможность управлять всеми зависимостями вашего проекта с помощью файла requirements.txt - файл зависимостей проекта, содержащий список пакетов и модулей, которые нужно установить для нормальной работы.

pip3 install -r requirements.txt

Это позволяет эффективно воспроизводить весь необходимый список пакетов в отдельном окружении (например, на другом компьютере) или в виртуальном окружении. requirements.txt содержит список аргументов установки pip, помещенных в файл с целью обеспечения повторяющихся установок. Закрепление версий зависимостей пакетов в файле requirements.txt защищает вас от ошибок или несовместимостей в недавно выпущенных версиях пакетов.

Составим список закрепленных версий всех пакетов, что были установлены в проекте с помощью команды pip freeze.

# получаем файл зависимостей проекта
pip3 freeze > requirements.txt
# переносим проект на другой компьютер 
# или в другое виртуальное окружение
pip3 install -r requirements.txt

Важно понимать, что pip определяет зависимости пакетов, используя метаданные install_requires , а не путем обнаружения requirements.txt файлов, встроенных в проекты.

Удаление пакетов

pip может удалить большинство пакетов следующим образом:

$ pip3 uninstall SomePackage

pip также выполняет автоматическое удаление старой версии пакета перед обновлением до новой версии.

Просмотр списка установленных

$ pip3 list
docutils (0.9.1)
Jinja2 (2.6)
Pygments (1.5)
Sphinx (1.1.2)

Чтобы вывести список устаревших пакетов и показать последнюю доступную версию:

$ pip3 list --outdated
docutils (Current: 0.9.1 Latest: 0.10)
Sphinx (Current: 1.1.2 Latest: 1.1.3)

Чтобы показать подробную информацию об установленном пакете:

$ pip3 show sphinx
---
Name: Sphinx
Version: 1.1.3
Location: /path/to/myVenv/lib/pythonx.x/site-packages
Requires: Pygments, Jinja2, docutils

Поиск пакетов

pip может искать пакеты в PyPI с помощью команды: pip search

$ pip3 search "query"
  • query - это запрос, который будет использоваться для поиска по именам и резюме всех пакетов.

Что ещё умеет делать pip:

  • pip install package_name - установка пакета(ов).
  • pip download package_name - загружает пакет(ы), но не устанавливает.
  • pip uninstall package_name - удаление пакета(ов).
  • pip list - выводит список установленных пакетов.
  • pip freeze - выводит список установленных пакетов с их версиями для файла requirements.txt.
  • pip search - поиск пакетов в PyPI по их имени.
  • pip install -U - обновление пакета(ов).
  • pip show some-package-name - показывает информацию об установленном пакете.
  • pip check package_name - проверяет что установленные пакеты имеют совместимые зависимости.
  • pip install --force-reinstall - переустановить пакет, даже если он последней версии.
  • pip help - помощь по доступным командам.