Работа в virtualenv Python

Содержание
Введение
Активация
Проверка активации
Проверка версии
Декативация
Удаление
Похожие статьи

Введение

В этой статье мы обсудим работу в виртуальном окружении.

Установку virtualenv мы рассматривали в предыдующей статье

Предположим, вы находитесь в директории virtualenvs внутри которой создано виртуальное окружение для Python3, которое называется test_env

Активация окружения

Чтобы активировать вируальное окружение test_env из стандартоной cmd в Windows выполните

test_env\Scripts\activate.bat

Если Вы используете PowerShell выполните

test_env\Scripts\activate.ps1

А если Вы под Linux выполните

. test_env/bin/activate

При успешной активации слева в командной строке появится название виртуального окружения в круглых скобках (test_env)

(test_env) PS C:\Users\Andrei\virtualenvs>

Если ничего не произошло прочитайте совет в моей статье

«Сложности при работе с Python»

Проверка активации

Название окружения может и не появиться в скобках в приглашении терминала.

Чтобы проверить активировалось ли виртуальное окружение или нет - можно выполнить следующие команды

python
>>>import sys
>>>sys.prefix
'/home/andrei/pytest/venv'
>>>sys.base_prefix
'/home/andrei/.pyenv/versions/3.9.5'

sys.prefix отличается от sys.base_prefix значит используется Python из виртуального окружения.

Если вы запускаете скрипт в Pycharm изучите вывод терминала

/home/andrei/pytest/venv/bin/python /home/andrei/pytest/main.py

Process finished with exit code 0

/home/andrei/pytest/venv/bin/python

- это путь до использованного Python

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

/usr/bin/python3.8

Проверка версии

Первое, что стоит сделать после первого входа в новое окружение - это проверить версию Python и Pip

python -V

Python 3.8.2

pip -V

pip 20.1.1 from C:\Users\Andrei\virtualenvs\test_env\lib\site-packages\pip (python 3.8)

Проверим, какие модули установлены в новом вирутальном окружении

python -m pip list

Package Version ---------- ------- pip 20.1.1 setuptools 46.4.0 wheel 0.34.2

Модулей всего три, это означает, что действительно, что-то изменилось.

Сравните с количеством модулей, которое установленов системе из урока pip

Установим requests в виртуальном окружении

python -m pip install requests

Collecting requests Downloading requests-2.23.0-py2.py3-none-any.whl (58 kB) |████████████████████████████████| 58 kB 609 kB/s Collecting urllib3!=1.25.0,!=1.25.1,<1.26,>=1.21.1 Downloading urllib3-1.25.9-py2.py3-none-any.whl (126 kB) |████████████████████████████████| 126 kB 2.2 MB/s Collecting chardet<4,>=3.0.2 Downloading chardet-3.0.4-py2.py3-none-any.whl (133 kB) |████████████████████████████████| 133 kB 2.2 MB/s Collecting certifi>=2017.4.17 Downloading certifi-2020.4.5.2-py2.py3-none-any.whl (157 kB) |████████████████████████████████| 157 kB 3.2 MB/s Collecting idna<3,>=2.5 Downloading idna-2.9-py2.py3-none-any.whl (58 kB) |████████████████████████████████| 58 kB 1.6 MB/s Installing collected packages: urllib3, chardet, certifi, idna, requests Successfully installed certifi-2020.4.5.2 chardet-3.0.4 idna-2.9 requests-2.23.0 urllib3-1.25.9

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

python -m pip list

Package Version ---------- ---------- certifi 2020.4.5.2 chardet 3.0.4 idna 2.9 pip 20.1.1 requests 2.23.0 setuptools 46.4.0 urllib3 1.25.9 wheel 0.34.2

request подтянул за собой ещё четыре пакета: certifi, chardet, idna, urllib3

Проверить куда установился requests в этом окружении можно командой

python -m pip show requests

Name: requests Version: 2.23.0 Summary: Python HTTP for Humans. Home-page: https://requests.readthedocs.io Author: Kenneth Reitz Author-email: me@kennethreitz.org License: Apache 2.0 Location: c:\users\andrei\virtualenvs\test_env\lib\site-packages Requires: chardet, certifi, urllib3, idna Required-by:

Деактивация

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

deactivate

Если сейчас выполнить

python -m pip show requests

WARNING: Package(s) not found: requests

Можно увидеть, что глобально requests вообще не установлен

Начиная с версии Python 3.6 рекомендуется создавать виртуальные окружения командой

python -m venv myvenv

Заново активируется окружение так же, например, для PowerShell

myvenv\Scripts\Activate.ps1

(myvenv) PS C:\Users\Andrei\virtualenvs>

Не знаю как у Вас, а у меня в PowerShell (myvenv), созданный с помощью venv подсвечен зелёным, а test_env, созданный с помощью virtualenv остаётся серым.

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

Чтобы удалить виртуальное окружение - просто удалите папку

Похожие статьи
virtualenv
Установка virtualenv
Применение virtualenv
freeze
virtualenvwrapper
Виртуальное окружение
Python
Anaconda
pyenv
venv

Поиск по сайту

Подпишитесь на Telegram канал @aofeed чтобы следить за выходом новых статей и обновлением старых

Перейти на канал

@aofeed

Задать вопрос в Телеграм-группе

@aofeedchat

Контакты и сотрудничество:
Рекомендую наш хостинг beget.ru
Пишите на info@urn.su если Вы:
1. Хотите написать статью для нашего сайта или перевести статью на свой родной язык.
2. Хотите разместить на сайте рекламу, подходящую по тематике.
3. Реклама на моём сайте имеет максимальный уровень цензуры. Если Вы увидели рекламный блок недопустимый для просмотра детьми школьного возраста, вызывающий шок или вводящий в заблуждение - пожалуйста свяжитесь с нами по электронной почте
4. Нашли на сайте ошибку, неточности, баг и т.д. ... .......
5. Статьи можно расшарить в соцсетях, нажав на иконку сети: