Pip (Python Package Installer)

Pip — это стандартный менеджер пакетов для Python, который позволяет устанавливать и управлять пакетами из Python Package Index (PyPI) и других репозиториев.

Основные команды pip

 1# Установка пакета
 2pip install requests
 3
 4# Установка конкретной версии
 5pip install requests==2.28.1
 6
 7# Установка из requirements.txt
 8pip install -r requirements.txt
 9
10# Обновление пакета
11pip install --upgrade requests
12
13# Удаление пакета
14pip uninstall requests
15
16# Список установленных пакетов
17pip list
18
19# Информация о пакете
20pip show requests
21
22# Поиск пакета
23pip search django

Работа с requirements.txt

 1# Создание файла с зависимостями
 2pip freeze > requirements.txt
 3
 4# Установка всех зависимостей
 5pip install -r requirements.txt
 6
 7# Пример requirements.txt
 8requests==2.28.1
 9django>=4.0,<5.0
10pytest  # для тестирования
11black   # для форматирования кода

Установка из разных источников

  • PyPI — pip install package_name
  • Git — pip install git+https://github.com/user/repo.git
  • Локально — pip install ./my_package
  • Wheel файлы — pip install package.whl
  • ZIP архивы — pip install https://example.com/package.zip

Продвинутые возможности pip

 1# Установка в пользовательскую директорию
 2pip install --user package_name
 3
 4# Установка без зависимостей
 5pip install --no-deps package_name
 6
 7# Сухой прогон (показать что будет установлено)
 8pip install --dry-run package_name
 9
10# Установка в конкретную директорию
11pip install --target /path/to/dir package_name
12
13# Обновление pip
14pip install --upgrade pip
15
16# Проверка зависимостей
17pip check

Использование с Poetry

 1# Poetry - современная альтернатива pip + requirements.txt
 2# Установка Poetry
 3curl -sSL https://install.python-poetry.org | python3 -
 4
 5# Создание нового проекта
 6poetry new my-project
 7
 8# Добавление зависимости
 9poetry add requests
10
11# Добавление dev-зависимости
12poetry add --group dev pytest
13
14# Установка зависимостей
15poetry install
16
17# Активация виртуального окружения
18poetry shell

Виртуальные окружения

 1# Создание виртуального окружения
 2python -m venv venv
 3
 4# Активация (Linux/Mac)
 5source venv/bin/activate
 6
 7# Активация (Windows)
 8venv\Scripts\activate
 9
10# Установка пакетов в виртуальное окружение
11pip install requests
12
13# Деактивация
14deactivate

Best Practices

  • Используйте виртуальные окружения — изолируйте зависимости проектов
  • Закрепляйте версии — указывайте точные версии в production
  • Регулярно обновляйте pip — используйте последнюю версию
  • Используйте requirements.txt — для воспроизводимых сборок
  • Проверяйте безопасность — используйте pip-audit для аудита

FAQ

В чем разница между pip и conda?

Pip устанавливает только Python пакеты, conda — универсальный менеджер пакетов и окружений для различных языков.

Что делать если pip не работает?

Попробуйте обновить pip: `python -m pip install --upgrade pip` или переустановите Python.

Как установить pip если его нет?

Pip входит в стандартную поставку Python 3.4+. Для старых версий: `python -m ensurepip --upgrade`