Глобальная установка модулей кажется удобной, пока разные проекты не требуют разные версии одного и того же пакета. Возникают конфликты, ломаются зависимости, а команда разработчиков тратит часы на ручную настройку. Виртуальное окружение (virtual environment, venv) создаёт автономную папку с собственным интерпретатором Python, каталогами bin/Scripts и отдельным pip. Такой подход делает окружение проекта повторяемым и переносимым: вы фиксируете версии, делитесь requirements.txt и получаете единообразие на машине, сервере и в CI.

В двух словах: venv изолирует пакеты и версии, уменьшает риск конфликтов и делает проект управляемым.

Как создать виртуальное окружение

Модуль venv входит в стандартную библиотеку Python начиная с версии 3.3. Создавать окружение лучше внутри каталога проекта; обычно папку называют «.venv» или «venv», чтобы не смешивать её с исходниками. Команда одна и та же, меняется только путь.

Команда (универсально):

python -m venv .venv

Если у вас установлено несколько версий интерпретатора, укажите нужную версию явно:

python3 -m venv .venv # macOS/Linux
py -3.11 -m venv .venv # Windows (через py лаунчер)

После создания появится папка окружения. Её структура зависит от ОС: на Windows — каталог Scripts с файлами python.exe и pip.exe; на macOS/Linux — каталог bin с исполняемыми файлами python и pip. Папку venv обычно добавляют в .gitignore, чтобы не отправлять её в репозиторий.

Итог: окружение создаётся одной командой, имя папки любое, но «.venv» — самый узнаваемый вариант.

ОНЛАЙН-ПРАКТИКУМ
ЗАПУСК DEEPSEEK R1 ЛОКАЛЬНО НА СВОЕМ КОМПЬЮТЕРЕ
ЧТО БУДЕТ НА ОБУЧЕНИИ?
  • ПОКАЖЕМ, КАК РАЗВЕРНУТЬ МОДЕЛЬ DEEPSEEK R1 ПРЯМО НА СВОЁМ КОМПЬЮТЕРЕ
  • Где и как применять? Потестируем модель после установки на разных задачах
  • Как дообучить модель под себя?

Активация виртуального окружения

Активация подменяет ваш PATH так, что оболочка использует интерпретатор и pip из папки окружения. Команды отличаются в зависимости от операционной системы и оболочки.

Windows (PowerShell):

.\.venv\Scripts\Activate.ps1

Windows (Command Prompt):

.\.venv\Scripts\activate.bat

macOS/Linux (bash, zsh):

source .venv/bin/activate

macOS/Linux (fish):

source .venv/bin/activate.fish

Проверить, что всё активировалось корректно:

python -V
which python # macOS/Linux
where python # Windows

Суть: после активации приглашение терминала помечается «(.venv)», а команды python и pip начинают ссылаться на файлы внутри папки окружения.

Деактивация окружения

Когда работа закончена, вернуться к глобальной среде помогает команда:

deactivate

После деактивации PATH восстанавливается, а приглашение терминала лишается префикса «(.venv)».

Использование venv на практике

В активной среде устанавливайте пакеты, запускйте скрипты и фиксируйте зависимости. Это снижает риск «дрейфа» версий и упрощает перенос проекта.

Установка библиотек и проверка:

pip install requests
pip list
pip show requests

Запуск скриптов проекта выполняется обычной командой «python script.py» — но теперь интерпретатор и пакеты берутся из .venv.

Чтобы поделиться окружением, зафиксируйте версии:

pip freeze > requirements.txt

Позже на другой машине можно воссоздать то же окружение: «pip install -r requirements.txt».

Главное: все операции — установка пакетов, запуск Python и pip — выполняются после активации среды и относятся только к текущему проекту.

Возможные ошибки и решения

PowerShell блокирует скрипты (Windows): при попытке «Activate.ps1» может появиться предупреждение об Execution Policy.

Set-ExecutionPolicy -Scope CurrentUser RemoteSigned

Эта команда разрешит запуск локальных скриптов активации. Перезапустите PowerShell и попробуйте снова.

Неправильный путь к Scripts/bin: убедитесь, что вы находитесь в корне проекта и папка «.venv» существует. Проверьте содержимое каталога и регистр букв в имени.

dir .\.venv\Scripts # Windows
ls -la .venv/bin # macOS/Linux

Активировано другое окружение: если раньше вы активировали другую среду, сначала выполните «deactivate», затем активируйте нужную.

deactivate
source .venv/bin/activate # macOS/Linux пример

IDE и автоматическая активация: многие среды разработки (например, PyCharm, VS Code) умеют автоматически выбирать интерпретатор из .venv для терминала проекта. Проверьте настройки интерпретатора в IDE: укажите путь к python из каталога bin/Scripts вашей среды.

Идея простая: ошибки чаще всего связаны с правами PowerShell или путём к папке .venv — проверьте эти два пункта в первую очередь.

Короткий вывод

  1. Venv изолирует пакеты и версии внутри проекта;
  2. Cоздание и активация занимают пару команд;
  3. Фиксация зависимостей делает окружение воспроизводимым на любой машине. Освоив активацию venv, вы получаете управляемую, чистую среду для каждого проекта и меньше сюрпризов в продакшене.

Чек‑лист: последовательность действий

Шаг Что сделать
Подготовка Откройте терминал в папке проекта (project). Убедитесь, что установлена нужная версия Python.
Создание env Выполните команду: python -m venv .venv (или python3/py). Появится папка .venv с bin/Scripts.
Активация Активируйте среду: Windows PowerShell — .\.venv\Scripts\Activate.ps1; CMD — .\.venv\Scripts\activate.bat; macOS/Linux — source .venv/bin/activate.
Проверка Убедитесь, что используется верный интерпретатор: python -V; which/where python. Префикс (.venv) виден в приглашении.
Работа Устанавливайте пакеты: pip install <пакет>. Запускайте скрипты внутри активной среды.
Фиксация Сохраните зависимости: pip freeze > requirements.txt. Восстановите на другой машине: pip install -r requirements.txt.
Деактивация Вернитесь к глобальной среде командой deactivate.
Большой практикум
ЗАМЕНИ ВСЕ НЕЙРОСЕТИ НА ОДНУ — PERPLEXITY
ПОКАЖЕМ НА КОНКРЕТНЫХ КЕЙСАХ
  • Освой Perplexity и узнай, как пользоваться функционалом остальных ИИ в одном
  • УЧАСТВОВАТЬ ЗА 0 РУБ.
  • Расскажем, как получить подписку (240$) бесплатно
Участвовать бесплатно
ОНЛАЙН-ПРАКТИКУМ
ЗАПУСК DEEPSEEK R1 ЛОКАЛЬНО НА СВОЕМ КОМПЬЮТЕРЕ
ЧТО БУДЕТ НА ОБУЧЕНИИ?
  • ПОКАЖЕМ, КАК РАЗВЕРНУТЬ МОДЕЛЬ DEEPSEEK R1 ПРЯМО НА СВОЁМ КОМПЬЮТЕРЕ
Участвовать бесплатно