Назад к вопросам
Middle
155
questionbank
Что такое Poetry и какие преимущества он предоставляет в управлении зависимостями в проектах на Python?
Sobes Copilot
Получайте ответы в реальном времени
Ответ от нейросети
sobes.tech AI
Poetry — это инструмент для управления зависимостями и сборки пакетов в проектах на Python.
Преимущества Poetry:
- Детерминированное управление зависимостями: Poetry использует файл
poetry.lock, который фиксирует точные версии всех установленных зависимостей, обеспечивая воспроизводимость рабочего окружения. - Изоляция зависимостей: Каждый проект имеет свое виртуальное окружение, изолируя зависимости от других проектов и системы.
- Упрощенное управление зависимостями: Команды для добавления, удаления и обновления зависимостей интуитивно понятны и просты.
- Встроенный менеджер виртуальных окружений: Poetry сам создает и управляет виртуальными окружениями, избавляя от необходимости использовать
venvилиvirtualenvотдельно. - Управление публикацией пакетов: Poetry упрощает процесс сборки и публикации пакетов на PyPI.
- Файл
pyproject.toml: Все настройки проекта (зависимости, метаданные и т.д.) хранятся в едином файлеpyproject.toml, который соответствует стандарту PEP 518.
Пример добавления зависимости:
poetry add requests
Пример удаления зависимости:
poetry remove requests
Пример установки зависимостей из lock-файла:
poetry install
Пример структуры pyproject.toml:
[tool.poetry]
name = "my-package"
version = "0.1.0"
description = ""
authors = ["My Name <me@example.com>"]
readme = "README.md"
packages = [{include = "my_package"}]
[tool.poetry.dependencies]
python = "^3.9"
requests = "^2.28.1"
[tool.poetry.group.dev.dependencies]
pytest = "^7.1.2"
[build-system]
requires = ["poetry-core"]
build-backend = "poetry.core.masonry.api"