sadrix logoSadriX
Минцифры готовит обязательную регистрацию IMEI смартфонов, купленных за границей
Гайды

Как создать виртуальное окружение Python venv: пошаговая инструкция

Изолируйте зависимости проектов и избегайте конфликтов версий

09 793 просмотров4 мин
0
Поделиться:TelegramVK

Введение

При разработке на Python часто возникает проблема: разные проекты требуют разные версии одних и тех же библиотек. Установка пакетов глобально приводит к конфликтам и «загрязнению» системы. Решение — виртуальные окружения. В этой статье мы подробно разберём, как создать виртуальное окружение с помощью встроенного модуля venv, активировать его и использовать в повседневной работе.

Что такое venv и зачем он нужен

venv — это модуль стандартной библиотеки Python (доступен с версии 3.3), который позволяет создавать изолированные среды. Каждое виртуальное окружение имеет собственный интерпретатор Python и собственную папку для установки пакетов. Это даёт несколько преимуществ:

  • Изоляция зависимостей: пакеты, установленные в одном окружении, не влияют на другие проекты и на глобальную систему.

  • Воспроизводимость: вы можете зафиксировать версии библиотек в requirements.txt и легко развернуть проект на другой машине.

  • Безопасность: эксперименты с новыми пакетами не нарушат работу системных инструментов.

  • Чистота: не засоряется глобальное пространство пакетов.

Требования

  • Установленный Python версии 3.3 или выше. Проверить версию: python --version или python3 --version.

  • Доступ к командной строке (Terminal, PowerShell, cmd).

  • Базовые навыки работы с командной строкой.

Шаг 1: Проверка установки Python

Откройте терминал и выполните:

python --version

или

python3 --version

Вы должны увидеть что-то вроде Python 3.11.5. Если команда не найдена, установите Python с официального сайта.

Шаг 2: Переход в папку проекта

Виртуальное окружение обычно создаётся в корневой папке проекта. Перейдите в неё:

cd путь/к/вашему/проекту

Если папки ещё нет, создайте её и перейдите внутрь:

mkdir myproject
cd myproject

Шаг 3: Создание виртуального окружения

Выполните команду:

python -m venv venv

Здесь venv после -m — это имя модуля, а последний аргумент venv — имя создаваемой папки. Вы можете назвать её иначе, например env или .venv. После выполнения в текущей директории появится папка venv с копией интерпретатора и служебными файлами.

Важно: не добавляйте папку виртуального окружения в систему контроля версий (Git). Добавьте её в .gitignore.

Шаг 4: Активация окружения в Windows

В Windows команды различаются для разных оболочек.

Для cmd (командная строка):

venv\Scripts\activate.bat

Для PowerShell:

.\venv\Scripts\Activate.ps1

Если PowerShell выдаёт ошибку о запрете выполнения сценариев, разрешите их запуск:

Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUser

Для Git Bash:

source venv/Scripts/activate

После активации в начале строки приглашения появится (venv).

Шаг 5: Активация окружения в macOS и Linux

Выполните:

source venv/bin/activate

или

. venv/bin/activate

Приглашение изменится, добавив (venv).

Шаг 6: Проверка активации

Убедитесь, что используется правильный интерпретатор:

which python   # macOS/Linux
where python   # Windows

Путь должен указывать на папку venv. Также можно проверить версию:

python --version

Шаг 7: Установка пакетов

Теперь все пакеты, устанавливаемые через pip, будут попадать только в это окружение. Например:

pip install requests

Проверить список установленных пакетов:

pip list

Шаг 8: Фиксация зависимостей

Чтобы сохранить список пакетов для других разработчиков или для развёртывания, выполните:

pip freeze > requirements.txt

В файле requirements.txt окажутся все установленные пакеты с версиями. Для установки из такого файла в другом окружении:

pip install -r requirements.txt

Шаг 9: Деактивация окружения

Когда работа завершена, выйдите из виртуального окружения:

deactivate

Приглашение вернётся к обычному виду.

Шаг 10: Удаление виртуального окружения

Просто удалите папку venv:

rm -rf venv   # macOS/Linux
rmdir /s venv # Windows (cmd)

Или удалите через проводник. Никаких следов в системе не останется.

Шаг 11: Использование venv с IDE

Большинство современных IDE (PyCharm, VS Code) автоматически определяют виртуальные окружения. В PyCharm при создании проекта выберите «New environment using Virtualenv». В VS Code нажмите Ctrl+Shift+P, введите «Python: Select Interpreter» и укажите путь к venv/bin/python (или venv\Scripts\python.exe).

Шаг 12: Обновление pip внутри окружения

Иногда pip в новом окружении устаревший. Обновите его:

pip install --upgrade pip

Типичные ошибки

  • Ошибка «venv: command not found»: модуль venv не установлен. В Debian/Ubuntu установите пакет python3-venv:

  sudo apt install python3-venv
  • PowerShell блокирует активацию: выполните Set-ExecutionPolicy RemoteSigned -Scope CurrentUser.

  • Активация не меняет приглашение: проверьте путь к скрипту активации, возможно, вы находитесь не в той папке.

  • Пакеты устанавливаются глобально: скорее всего, окружение не активировано. Убедитесь, что в приглашении есть (venv).

  • Случайное добавление venv в Git: добавьте папку в .gitignore.

FAQ

В чём разница между venv и virtualenv? venv — встроенный модуль, рекомендованный для Python 3. virtualenv — сторонний пакет с более широкими возможностями, но для большинства задач достаточно venv.

Можно ли создать окружение с другой версией Python? Да, если у вас установлено несколько версий. Укажите нужный интерпретатор:

python3.9 -m venv venv

Как перенести окружение на другой компьютер? Лучше не копировать папку venv, а создать новое окружение и установить зависимости из requirements.txt.

Нужно ли активировать окружение каждый раз при открытии терминала? Да, активация действует только в текущей сессии. Для автоматизации можно настроить скрипты или использовать инструменты вроде direnv.

Что делать, если pip не работает после активации? Попробуйте переустановить pip:

python -m ensurepip --upgrade

Итог

Виртуальные окружения — обязательный инструмент в арсенале Python-разработчика. Они помогают поддерживать чистоту системы, избегать конфликтов и упрощают совместную работу. Следуя этой инструкции, вы легко создадите и настроите venv для любого проекта.

Читайте также

Комментарии

Комментарии доступны только зарегистрированным пользователям. Войти

  • Пока нет комментариев. Будьте первым.