Pipenv: Управление зависимостями Python

Pipenv — простой и эффективный способ управления зависимостями в различных проектах Python. Он позволяет создавать виртуальные окружения, избегая конфликтов версий пакетов.

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

Разработчики часто работают над несколькими проектами на одном компьютере. Разные проекты могут использовать одни и те же пакеты, но требовать разных версий. Виртуальные среды позволяют устанавливать различные версии пакетов для каждого проекта изолированно, не затрагивая глобальную установку.

Pipenv: Простота и скорость

Pipenv упрощает создание и управление виртуальными окружениями Python. Он автоматически создаёт файлы Pipfile и Pipfile.lock, содержащие информацию о зависимостях и их версиях. Аналогично npm в Node.js (с файлами package.json и package-lock.json), Pipenv обеспечивает воспроизводимость среды проекта.

Создание виртуального окружения и установка Flask

Создадим проект с использованием Pipenv и установим пакет Flask.

  1. Создание проекта: Создадим папку (например, pipenv-demo) и внутри неё файл main.py. Создадим также скрытую папку .venv для хранения файлов виртуальной среды, чтобы избежать её случайного коммита в систему контроля версий.
  2. Проверка Pipenv: Проверим установку Pipenv командой pipenv —version. При отсутствии Pipenv, используйте brew install pipenv (macOS) или pip install pipenv (Windows).
  3. Установка Flask: Выполним команду pipenv install flask. Эта команда создаст виртуальное окружение и установит последнюю стабильную версию Flask.
  4. Созданные файлы: После установки Flask появятся папки bin, lib, src и файлы Pipfile, Pipfile.lock, а также другие файлы в скрытой папке .venv. VS Code автоматически обнаружит новое окружение и предложит выбрать его интерпретатор. Pipfile содержит список зависимостей, а Pipfile.lock — их точные версии.

Работа с виртуальной средой и приложением Flask

  1. Активация виртуальной среды: Для активации используется команда pipenv shell. В командной строке появится указание на активное окружение (pipenv-demo).
  2. Создание приложения Flask: В файле main.py создадим простое приложение Flask, возвращающее строку «Hello from Flask».
  3. Форматирование кода: VS Code может предложить установить форматировщик (например, Black). Black устанавливается с помощью pipenv и добавляется в раздел dev-packages файлов Pipfile и Pipfile.lock.
  4. Запуск приложения: Запустим приложение командой python main.py. Приложение будет доступно по адресу http://127.0.0.1:8080/.

Git и Pipenv

Файлы Pipfile и Pipfile.lock следует включить в систему контроля версий, а папку .venv — игнорировать (используя файл .gitignore). Это гарантирует, что другие разработчики смогут воспроизвести среду проекта, выполнив pipenv install.

Pipenv — простой и эффективный способ управления зависимостями в Python-проектах. Использование Pipfile и Pipfile.lock обеспечивает воспроизводимость среды и упрощает совместную работу. Рекомендуется использовать Pipenv для всех Python-проектов.

Что будем искать? Например,программа