Во всех проектах профессии мы предлагаем использовать инструмент poetry — с его помощью можно управлять зависимостями. Сегодня это главный инструмент Python-разработчика.
Poetry — простой и удобный инструмент, который упрощает ведение и разработку проекта. Советуем оформлять каждый учебный эксперимент как poetry-проект, так вы быстрее привыкнете к профессиональным инструментам.
В этом уроке будем разбираться, как работать с Poetry. Пойдем по следующим шагам:
- Установка
- Настройка
- Создание первого poetry-проекта
- Работа с
pyproject.toml
- Инициализация виртуального окружения
Как установить Poetry
Poetry написан на Python, но это не обычная Python-программа, которую устанавливают с помощью pip install
. Во вводном разделе документации к Poetry вы найдете команды для установки программы в вашу операционную систему.
Когда вы установите Poetry, он станет доступен как отдельная команда в shell:
poetry --version
Poetry version …
На этом установка программы заканчивается. Перед тем, как создавать первый проект, настроим инструмент для удобной работы.
Как настроить Poetry
Если сразу после установки запросить перечень настроек Poetry, можно увидеть следующее:
poetry config --list
cache-dir = "/…/…/.cache/pypoetry"
virtualenvs.create = true
virtualenvs.in-project = null
virtualenvs.path = "{cache-dir}/virtualenvs" # /home/astynax/.cache/pypoetry/virtualenvs
Poetry работает с виртуальными окружениями. При этом он изначально настроен так, что у вас будет много разных версий Python. По этой причине инструмент создает виртуальные окружения для проектов в непривычном месте — обратите внимание на настройку virtualenvs.path
.
Можно использовать настройки по умолчанию, но Python-разработчики обычно хранят виртуальное окружение для каждого проекта в директории проекта, а именно в поддиректории .venv
.
Вспомните, как вы создавали окружения командой python3 -m venv .venv
. В Poetry стоит делать так же:
poetry config virtualenvs.in-project true
Теперь у каждого poetry-проекта виртуальное окружение будет при себе. Например, так можно переносить проект с одной машины на другую — достаточно просто скопировать директорию.
Когда мы настроим Poetry, он будет готов для создания первого проекта.
Как создать первый проект
Создадим poetry-проект с помощью команды poetry new ИМЯ
. Перед запуском Poetry убедитесь, что в системе доступна команда python3
.
Предположим, вы ввели команду poetry new first
. Вот как будет выглядеть результат:
poetry new first