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

    Команда Simple-Server
    03.06.2026
    7 мин

    Материал подготовлен командой Simple-Server для администраторов VPS и выделенных серверов. Команды и пути проверяйте на тестовой машине перед production.

    Способы создания виртуального окружения

    Существует несколько инструментов для создания виртуальных окружений. Мы проанализируем четыре ключевых инструмента, каждый со своими особенностями: venv, virtualenv, conda и UV. Запускать окружения будем на облачном сервере Simple-Server с использованием ОС Ubuntu.

    Начиная с Python 3.3, разработчикам больше не нужны сторонние инструменты вроде virtualenv для создания изолированных сред. Стандартная библиотека языка включает в себя модуль venv, который признан наиболее удобным и предпочтительным методом для этой задачи.

    1. Открываем терминал и переходим в директорию с Python-проектом.
    2. Для активации виртуального окружения выполняем команду:
    python -m venv my-first-env

    Здесь my-first-env — это имя папки, в которой будет создано виртуальное окружение. Его можно назвать как угодно. Часто используются имена venv, .venv, env.

    Команда создаст папку my-first-env со следующей структурой:

    ├── my-first-env/ # Директория виртуального окружения │ ├── bin/ # Исполняемые файлы │ │ ├── python # Интерпретатор Python │ │ ├── python3 # Ссылка на python │ │ ├── pip # Менеджер пакетов │ │ ├── pip3 # Ссылка на pip │ │ ├── activate # Активация для bash │ │ ├── activate.csh # Активация для csh │ │ └── easy_install* # Установщик пакетов │ ├── include/ # C-заголовки для компиляции │ ├── lib/ # Установленные пакеты │ │ └── python3.X/ # Используемая версия Python │ │ └── site-packages/ │ │ ├── pip/ # Пакет pip │ │ ├── setuptools/ │ └── pyvenv.cfg # Конфигурация окружения
    1. Перед тем как использовать виртуальное окружение, его необходимо активировать. Это временно меняет переменные окружения текущей shell-сессии так, чтобы команды python и pip ссылались на версии внутри созданного виртуального окружения. Для активации окружения my-first-env выполняем команду внутри директории с проектом:
    source my-first-env/bin/activate

    При успешной активации в начале строки терминала отобразится приглашение с именем окружения.

    1. Для деактивации виртуального окружения используется команда:

    После этого имя окружения слева пропадет. Команду по деактивации виртуального окружения можно выполнять из любого места в файловой системе.

    virtualenv — популярный сторонний инструмент, который предлагает больше функций и немного быстрее. Также virtualenv можно использовать для создания окружений для более старых версий Python (например, Python 2.5).

    1. В отличие от venv, virtualenv необходимо установить заранее. Произведем установку при помощи пакетного менеджера операционной системы. Так как мы используем Ubuntu, то воспользуемся менеджером apt для установки пакета:
    apt install python3-venv -y
    1. Далее переходим в папку с проектом Python и создаем виртуальное окружение с именем my-second-env:

    2. Процессы активации и деактивации аналогичны при работе с venv. Для активации необходимо выполнить команду:

    source my-second-env/bin/activate

    Для деактивации достаточно выполнить:

    conda — это кроссплатформенный менеджер пакетов и окружений. Он управляет не только Python-пакетами, но и, например библиотеками на C/C++.

    1. Мы установим пакет Miniconda, которая содержит в себе предустановленный набор из более чем 1500 самых популярных пакетов для data science.

    Для начала создадим директорию с именем miniconda3 в домашнем каталоге пользователя:

    1. Скачиваем архив с программой при помощи утилиты wget:
    wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh -O ~/miniconda3/miniconda.sh
    1. Выполняем автоматическую установку Miniconda при помощи команды:
    bash ~/miniconda3/miniconda.sh -b -u -p ~/miniconda3
    1. После завершения установки удаляем установочный скрипт:
    rm ~/miniconda3/miniconda.sh
    1. Далее инициализируем conda при помощи команд:
    source ~/miniconda3/bin/activate conda init --all
    1. Переходим в директорию с проектом и создаем новое виртуальное окружение:
    conda create --name my-conda-env

    При появлении надписи Proceed ([y]/n)? вводим y:

    После того как виртуальное окружение будет создано, в выводе будут сгенерированы команды для активации и остановки окружения:

    В нашем примере для активации необходимо выполнить команду:

    conda activate my-conda-env

    Для деактивации используется команда:

    UV — это современный инструмент, написанный на языке Rust, который заменяет собой целый набор утилит для управления зависимостями и виртуальными окружениями в Python.

    1. Для начала необходимо установить UV. Для этого выполняем команду:
    curl -LsSf https://astral.sh/uv/install.sh | sh
    1. Перед запуском UV необходимо добавить его бинарный файл в PATH:
    source $HOME/.local/bin/env
    1. Прежде чем приступать к работе с UV, его необходимо инициализировать. Для этого выполняем команду:

    И переходим в созданную директорию:

    1. Создаем виртуальное окружение:

    2. Для активации выполняем команду:

    source .venv/bin/activate
    1. Установить пакет можно при помощи команды:

    Использование виртуального окружения на практике — на примере venv

    1. Создаем новую директорию и переходим в нее:
    mkdir test-env && cd test-env
    1. Создаем виртуальное окружение при помощи команды:
    source test-env/bin/activate
    1. Установим несколько пакетов при помощи менеджера пакетов pip (теперь пакеты будут устанавливаться внутрь созданного виртуального окружения, а не глобально):
    pip install requests numpy pandas
    1. После того как работа над проектом завершена, необходимо сохранить зависимости в файл. Данная особенность позволяет легко воссоздать окружение на другом компьютере. Для сохранения зависимостей используется команда pip freeze, которой в качестве аргумента необходимо указать файл. Как правило используется файл requirements.txt, однако можно использовать любое другое имя:
    pip freeze > requirements.txt
    1. Проверим содержимое файла requirements.txt:

    В файл были записаны все используемые сторонние библиотеки, а также их версии.

    1. Чтобы восстановить зависимости на новом устройстве при переносе или копировании проекта, необходимо выполнить команду:
    pip install -r requirements.txt

    Виртуальное окружение в Python стало незаменимым инструментом в процессе разработки. Возникает вопрос: какой же инструмент выбрать?

    • Для большинства проектов используйте стандартный venv или более продвинутый UV.
    • Если нужны дополнительные функции или работа с Python 2, используйте virtualenv.
    • Если вы занимаетесь Data Science, то используйте экосистему Conda.

    Нужен сервер для практики? Арендуйте VPS/VDS в России — root-доступ, NVMe, DDoS-защита и поддержка 24/7.

    VPS для проекта

    VPS с root-доступом, NVMe и поддержкой 24/7 на Simple-Server.

    StarterVDS

    490

    в месяц

    1 ядро

    1 ГБ RAM

    20 ГБ NVMe

    • 1 IPv4
    • KVM
    • Root-доступ
    • Безлимитный трафик
    Заказать VPS
    Рекомендуем

    PerformanceVDS

    1190

    в месяц

    2 ядра

    4 ГБ RAM

    60 ГБ NVMe

    • 1 IPv4
    • KVM
    • Root-доступ
    • Базовая DDoS-защита
    Заказать VPS

    Нужна другая конфигурация или чистый VPS без панели?

    Все тарифы VPS

    Похожие статьи, которые могут быть вам интересны