Виртуальная среда Python используется для создания изолированной среды для проекта Python. Эта среда содержит интерпретатор, библиотеки и сценарии проекта. Вы можете создать любое количество виртуальных сред для своих проектов, каждая из которых имеет свои собственные зависимости.
С помощью виртуальной среды Python можно избежать глобальную установку пакетов, которая может нарушить работу других проектов.
Говоря простыми словами, виртуальная среда помогает правильно установить определенные версии пакетов, необходимых для проекта python.
Если у вас не установлен Python рекомендую прочитать статью Установка Python в Ubuntu
Обновление пакетов системы
Чтобы обновить Ubuntu 20.04 последними пакетами, выполните команду apt:
$ sudo apt update
$ sudo apt upgrade
Установка pip для python3
Перед установкой виртуальной среды, требуется установить pip. Pip — это менеджер пакетов, который помогает устанавливать, удалять и обновлять пакеты для ваших проектов.
Чтобы установить pip для python 3 используйте команду:
$ apt install python3-pip
Создание виртуальной среды для python 3
Команда Venv используется в Python для создания виртуальной среды. Пакет venv доступен в репозитории Ubuntu.
Чтобы установить пакет venv, требуется использовать следующую команду:
$ apt-get install python3-venv
Теперь, чтобы создать виртуальную среду, введите:
$ python3 -m venv my_env_project
Приведенная выше команда создает каталог с именем «my_env_project«, который содержит pip, интерпретатор, скрипты и библиотеки.
oltjano@ubuntu:~$ ls my_env_project/
bin include lib lib64 pyvenv.cfg share
Теперь вы можете активировать виртуальную среду, введя команду:
$ source my_env_project/bin/activate
Командная строка изменится на вашу среду и будет выглядеть так, как показано ниже:
(my_env_project) oltjano@ubuntu:~$
Проверка виртуальной среды Python
Запустите команду «python» внутри виртуальной среды, чтобы открыть интерпретатор:
(my_env_project) oltjano@ubuntu:~$ python
Ответ терминала будет следующим:
Python 3.8.5 (default, Jul 28 2020, 12:59:40)
[GCC 9.3.0] on linux
Type «help», «copyright», «credits» or «license» for more information.
Попробую установить пакет NumPy внутри виртуальной среды Python. Для этого воспользуюсь командой:
(my_env_project) oltjano@ubuntu: ~ $ pip install numpy —user
Если вы получите ошибку типа:
“ERROR: Can not perform a ‘–user’ install. User site-packages are not visible in this virtualenv.”
Вам требуется установить пакет include-system-site-packages и установить значение true в файле pyvenv.cfg.
Каждый раз, когда вы устанавливаете новый пакет в своей виртуальной среде, вы должны иметь возможность импортировать его в свой проект.
(my_env_project) oltjano@ubuntu:~/my_env_project$ python
>>> import numpy
Давайте протестируем математическую функцию:
>>> import math
>>> print(math.sqrt(16))
Чтобы выйти из интерпретатора, введите:
>>> quit()
Вы можете создать скрипт python и запустить его из виртуальной среды python 3.
(my_env_project) oltjano@ubuntu:~$ sudo vi script.py
Вы увидите следующий результат:
import math
print(math.sqrt(16))
Чтобы выполнить сценарий, введите:
(my_env_project) oltjano@ubuntu:~$ python script.py
Сценарий выполняется внутри виртуальной среды с именем my_env_project.
Удалить виртуальную среду Python
Для выхода из виртуальной среды используйте команду exit или сочетание клавиш Ctrl+d. Чтобы удалить виртуальную среду, выполните следующую команду:
(my_env_project) oltjano@ubuntu:~$ deactivate
Приведенная выше команда не удалит каталог my_env_project. Для удаления каталога потребуется использовать команду rm.
Заключение
Надеюсь что данная статья помогла вам узнать, как правильно создать виртуальную среду для ваших проектов Python 3 на Ubuntu 20.04.