Олег Марков
Управление зависимостями requirement в Python
Введение
В Python управление зависимостями играет ключевую роль для стабильности и воспроизводимости проектов. Файл requirements.txt позволяет фиксировать версии библиотек и облегчает настройку окружения на разных машинах. В этой статье мы разберём, как создавать и использовать requirements.txt, а также поддерживать зависимости в актуальном состоянии. В этой статье мы разберём эти процессы на практике.
Создание requirements.txt
Файл requirements.txt содержит список всех библиотек, необходимых для проекта, с указанием версии.
pip freeze > requirements.txtЭта команда создаёт файл со всеми установленными пакетами в текущем окружении. Пример содержимого:
requests==2.31.0
numpy==1.26.0
pandas==2.1.0С таким файлом любой разработчик может установить точно такие же версии библиотек.
Для системного освоения работы с зависимостями, управлением окружением и библиотеками Python рекомендуем курс Основы Python. На курсе 209 уроков и 34 упражнения, AI-тренажёры для практики 24/7, живое ревью наставника и еженедельные встречи позволяют закрепить навыки работы с зависимостями и применять их в реальных проектах.
Установка зависимостей
Чтобы установить все зависимости из requirements.txt, используется команда:
pip install -r requirements.txtОна создаёт среду с точно такими же версиями библиотек, что и у автора проекта. Это важно для воспроизводимости кода и предотвращения конфликтов версий.
Обновление и управление версиями
Можно указать версии библиотек:
requests>=2.30.0,<3.0.0Такой подход позволяет использовать новые функции библиотеки, избегая несовместимостей с будущими версиями.
Виртуальные окружения
Рекомендуется использовать виртуальные окружения, чтобы изолировать зависимости проекта:
python -m venv venv
source venv/bin/activate # Linux/macOS
venv\Scripts\activate # WindowsПосле активации окружения устанавливаем зависимости из requirements.txt.
Частые ошибки
- Отсутствие фиксации версии библиотеки, что приводит к несовместимостям.
- Установка глобальных пакетов без виртуального окружения.
- Редактирование
requirements.txtвручную без проверки совместимости. - Пропуск обновления зависимостей при переходе на новые версии Python.
Частозадаваемые вопросы
Что делает pip install -r requirements.txt?
Устанавливает все пакеты, указанные в файле, с фиксированными версиями.
Как создать requirements.txt?
Командой pip freeze > requirements.txt в активированном окружении.
Можно ли указывать диапазон версий?
Да, например numpy>=1.25.0,<2.0.0.
Заключение
Управление зависимостями через requirements.txt упрощает настройку проектов, обеспечивает воспроизводимость и уменьшает конфликты версий. Использование виртуальных окружений в сочетании с требованиями проекта гарантирует стабильную работу кода.
Для закрепления навыков работы с зависимостями, виртуальными окружениями и библиотеками Python рекомендуем курс Основы Python. В первых 3 модулях доступно бесплатное содержание — вы сможете практиковаться с файлами requirements.txt, управлять версиями библиотек и настраивать окружение для проектов до изучения полного курса.
Постройте личный план изучения Python до уровня Middle — бесплатно!
Python — часть карты развития Backend
100+ шагов развития
30 бесплатных лекций
300 бонусных рублей на счет
Все гайды по Python
Лучшие курсы по теме

Основы Python
Антон Ларичев
Nest.js с нуля
Антон Ларичев