Как создать виртуальное окружение Python venv: пошаговый гайд
Полное руководство по работе с venv: от установки Python до управления пакетами
Введение
Виртуальное окружение Python — это изолированная среда, в которой можно устанавливать пакеты и зависимости отдельно для каждого проекта. Без него все библиотеки попадают в глобальную установку Python, что со временем приводит к конфликтам версий и «загрязнению» системы. Модуль venv входит в стандартную библиотеку Python 3.3+ и не требует дополнительных установок.
В этом руководстве мы разберём, как создать виртуальное окружение, активировать его на разных операционных системах, устанавливать пакеты и правильно завершать работу. Инструкция подойдёт новичкам и тем, кто хочет систематизировать знания.
Требования
Установленный Python версии 3.3 или выше (рекомендуется 3.8+). Проверить версию:
python --versionилиpython3 --version.Доступ к командной строке (Terminal в macOS/Linux, Command Prompt или PowerShell в Windows).
Базовые навыки работы с командной строкой.
Для Windows: убедитесь, что при установке Python была отмечена опция «Add Python to PATH».
Шаг 1: Проверка установки Python
Откройте терминал и выполните:
python --versionили для Unix-систем:
python3 --versionЕсли вы видите версию Python (например, Python 3.11.4), всё готово. Если команда не найдена, установите Python с официального сайта python.org или через менеджер пакетов вашей ОС.
Шаг 2: Перейдите в папку проекта
В терминале перейдите в директорию, где будет храниться ваш проект. Например:
cd ~/projects/myprojectЕсли папки ещё нет, создайте её:
mkdir myproject && cd myprojectВиртуальное окружение обычно создают внутри папки проекта, но можно и на уровень выше — главное, чтобы путь не содержал пробелов и специальных символов.
Шаг 3: Создание виртуального окружения
Выполните команду:
python -m venv venvЗдесь venv — имя создаваемой папки с окружением. Можно выбрать любое другое имя, например env или .venv. Второй аргумент — это имя окружения, первый — модуль venv.
После выполнения в текущей директории появится папка venv с копией интерпретатора Python и менеджером пакетов pip. Внутри неё находятся подпапки Scripts (Windows) или bin (macOS/Linux).
Важно: не добавляйте папку окружения в систему контроля версий (Git). Добавьте её имя в .gitignore.
Шаг 4: Активация окружения в Windows
В Windows команда активации зависит от используемой оболочки.
Для Command Prompt (cmd):
venv\Scripts\activate.batДля PowerShell:
.\venv\Scripts\Activate.ps1Если PowerShell выдаёт ошибку политики выполнения, разрешите запуск скриптов:
Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUserПосле активации в начале строки приглашения появится (venv).
Шаг 5: Активация окружения в macOS и Linux
Выполните:
source venv/bin/activateили, если вы используете fish:
source venv/bin/activate.fishПризнак успешной активации — префикс (venv) в приглашении командной строки.
Шаг 6: Проверка активации
Убедитесь, что используется интерпретатор из виртуального окружения:
which python # macOS/Linux
where python # WindowsПуть должен указывать внутрь папки venv. Также проверьте версию pip:
pip --versionОна должна совпадать с версией Python в окружении.
Шаг 7: Установка пакетов
Теперь можно устанавливать библиотеки, и они будут изолированы. Например:
pip install requestsЧтобы установить конкретную версию:
pip install requests==2.28.0Список установленных пакетов:
pip listСохранение зависимостей в файл:
pip freeze > requirements.txtУстановка из файла:
pip install -r requirements.txtШаг 8: Деактивация окружения
Когда работа завершена, выполните:
deactivateПрефикс (venv) исчезнет, и вы вернётесь к глобальному Python.
Шаг 9: Удаление виртуального окружения
Просто удалите папку с окружением. В терминале:
rm -rf venv # macOS/Linux
rmdir /s venv # Windows (cmd)Или удалите через файловый менеджер. Никаких следов в системе не останется.
Шаг 10: Работа с несколькими окружениями
Для разных проектов создавайте отдельные окружения. Например, в папке проекта A: python -m venv .venv, в проекте B: python -m venv .venv. Активируйте нужное перед работой. Это исключает конфликты зависимостей.
Типичные ошибки
«python не является внутренней или внешней командой» — Python не добавлен в PATH. Переустановите Python с опцией «Add to PATH» или используйте полный путь к интерпретатору.
Ошибка при активации в PowerShell — выполните
Set-ExecutionPolicy RemoteSigned -Scope CurrentUser.`venv` не является модулем — возможно, используется Python 2 или урезанная сборка. Установите полноценный Python 3.
Пакеты устанавливаются глобально — проверьте, активировано ли окружение (должен быть префикс
(venv)).Конфликт имён папки и модуля — не называйте папку окружения
venv.pyилиrandom, чтобы не перекрыть стандартные модули.Забыли активировать окружение после перезапуска терминала — активируйте заново.
FAQ
Вопрос: Чем venv отличается от virtualenv? Ответ: venv — стандартный модуль Python 3, не требует установки. virtualenv — сторонний инструмент с расширенными возможностями, но для большинства задач достаточно venv.
Вопрос: Можно ли использовать venv с Python 2? Ответ: Нет, для Python 2 есть отдельный инструмент virtualenv. Рекомендуется перейти на Python 3.
Вопрос: Как узнать, какие пакеты установлены в окружении? Ответ: Выполните pip list после активации.
Вопрос: Что делать, если pip не работает в окружении? Ответ: Убедитесь, что окружение активировано. Если pip отсутствует, выполните python -m ensurepip --upgrade.
Вопрос: Нужно ли активировать окружение для запуска скрипта? Ответ: Да, если скрипт использует пакеты, установленные в этом окружении. Либо можно указать полный путь к интерпретатору из окружения.
Итог
Виртуальное окружение — обязательный инструмент для любого Python-разработчика. Оно помогает содержать зависимости в чистоте и избегать конфликтов. Теперь вы умеете создавать, активировать и использовать venv на любой ОС. Практикуйтесь, и этот процесс станет автоматическим.
Читайте также
Комментарии
Комментарии доступны только зарегистрированным пользователям. Войти
- Пока нет комментариев. Будьте первым.



