Установка и использование менеджера пакетов PIP в Python.

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

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

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

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

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

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

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

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

Bash
python3 -m pip <pip arguments>

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

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

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

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

Bash
pip3 install -r requirements.txt

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

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

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

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

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

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

Bash
pip3 uninstall SomePackage

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

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

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

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

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

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

Bash
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

Bash
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 — помощь по доступным командам.

Добавить комментарий