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

Jinku Hu 19 Декабрь 2022 18 Апрель 2020
Как создать и активировать виртуальную среду Python

Виртуальная среда Python создаёт изолированную рабочую среду Python, в которой можно установить зависимости от модулей Python без влияния глобальных модулей Python. Это особенно важно, если в вашем проекте установлена другая версия библиотеки Python, чтобы вы могли установить конкретную версию библиотеки только в этом виртуальном окружении.

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

  • Установить virtualenv

    В некоторых дистрибутивах virtualenv уже установлен. Вы можете проверить, включен ли уже в ваш дистрибутив, по следующим ссылкам

    $ virtual --version
    

    Если нет, установите virtualenv через pip.

    $ pip install virtualenv
    

    или через apt-get

    $ apt-get install python-virtualenv
    
  • Создать виртуальное окружение проекта.

    Используйте virtualenv для создания виртуальной среды проекта Python.

    $ cd your_project_folder
    $ virtualenv your_project
    
  • Активировать виртуальную среду проекта
    $ source your_project/bin/activate
    

    Он активирует виртуальную среду вашего проекта. Вы можете проверить его любым из двух методов, описанных ниже.
    Ваша консоль переключается на что-то вроде нижеприведенного.

    (your_project)user@hostname:~/your_project$
    

    Или перечислите системную переменную окружения PATH.

    $ echo $PATH
    

    В распечатанной информации вы должны увидеть путь your_project.

  • Деактивируйте virtualenv.

    Если вы хотите перейти на другую виртуальную среду или просто выйти из текущей виртуальной среды, вы можете деактивировать свой virtualenv с помощью команды

    (your_project)user@hostname:~/your_project$ deactivate
    user@hostname:~/your_project$
    
Author: Jinku Hu
Jinku Hu avatar Jinku Hu avatar

Founder of DelftStack.com. Jinku has worked in the robotics and automotive industries for over 8 years. He sharpened his coding skills when he needed to do the automatic testing, data collection from remote servers and report creation from the endurance test. He is from an electrical/electronics engineering background but has expanded his interest to embedded electronics, embedded programming and front-/back-end programming.

LinkedIn

Сопутствующая статья - Python virtualenv