Ответ
Виртуальное окружение в Python создает изолированную среду для проекта, позволяя управлять зависимостями независимо от глобальной системы. Это решает проблему конфликтов версий пакетов между разными проектами.
Основные причины использования:
- Изоляция зависимостей: Каждый проект может использовать свои конкретные версии библиотек (например,
Django 3.2в одном проекте иDjango 4.2в другом). - Воспроизводимость: Файл
requirements.txtилиpyproject.tomlпозволяет точно воссоздать окружение на другой машине. - Чистота системы: Предотвращает "загрязнение" системного Python пакетами, которые нужны только для конкретной задачи.
Базовые команды для venv:
# Создание окружения в папке 'venv'
python -m venv venv
# Активация (Linux/macOS)
source venv/bin/activate
# Активация (Windows PowerShell)
venvScriptsActivate.ps1
# Установка зависимостей из файла
pip install -r requirements.txt
# Деактивация окружения
deactivate
На практике я создаю виртуальное окружение для каждого нового проекта, что является стандартной практикой в экосистеме Python.