Как удалить venv python
Перейти к содержимому

Как удалить venv python

  • автор:

Выбор среды Python для проекта в Visual Studio

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

Для всех новых проектов Python в Visual Studio настраивается глобальное окружение по умолчанию, которое указано в узле Окружения Python в обозревателе решений:

Global default Python environment shown in Solution Explorer

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

Когда откроется диалоговое окно Добавление окружения, перейдите на вкладку Существующее окружение и выберите новое окружение из раскрывающегося списка Окружение:

Selecting a project environment in the Add Environments dialog

Если вы уже добавили в проект окружение, отличное от стандартного глобального окружения, для него может потребоваться активация. Щелкните окружение правой кнопкой мыши в узле Окружения Python и выберите действие Активировать окружение. Чтобы удалить из проекта окружение, выберите действие Удалить.

Activating and removing a project environment

Использование виртуальных окружений

Виртуальное окружение — это уникальное сочетание интерпретатора Python и набора библиотек, которое не повторяется в других глобальных окружениях и окружениях Conda. Виртуальное окружение предназначено для конкретного проекта, и данные о нем хранятся в папке проекта. В этой папке содержатся установленные библиотеки окружения и файл pyvenv.cfg, в котором указан путь к базовому интерпретатору, расположенному в другом месте файловой системы. То есть в виртуальном окружении нет копии интерпретатора, а только ссылка на него.

Преимуществом виртуального окружения является то, что в нем по мере разработки проекта всегда будут отражаться точные зависимости проекта. (С другой стороны, общая глобальная среда содержит любое количество библиотек, которые используются в проекте. Затем можно легко создать файл requirements.txt из виртуальной среды, который затем используется для переустановки этих зависимостей на другом компьютере разработки или рабочей среды. Дополнительные сведения см. в руководстве по управлению необходимыми пакетами с помощью requirements.txt.

Если в Visual Studio открыть проект, который содержит файл requirements.txt, Visual Studio автоматически позволит воссоздать виртуальное окружение. На тех компьютерах, где не установлена среда Visual Studio, можно восстанавливать пакеты с помощью команды pip install -r requirements.txt .

Учитывая то, что в виртуальном окружении жестко запрограммирован путь к базовому интерпретатору и можно воссоздать окружение с помощью файла requirements.txt, обычно вся папка виртуального окружения не указывается в системе управления версиями.

В следующих разделах объясняется, как активировать существующее виртуальное окружение в проекте и создать новое виртуальное окружение.

В Visual Studio виртуальное окружение для проекта активируется так же, как и любое другое окружение: с помощью узла Окружения Python в обозревателе решений.

Если виртуальное окружение добавлено в проект, оно появится в окне Окружения Python. После этого вы сможете активировать его, как и любое другое окружение, и управлять его пакетами.

Создание виртуальной среды

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

Virtual environment tab of the Add Environment dialog box

  1. Чтобы изменить окружение для проекта, щелкните правой кнопкой мыши узел Окружения Python в обозревателе решений и выберите Добавить окружение или выберите Добавить окружение из раскрывающегося списка окружений на панели инструментов Python. В открывшемся диалоговом окне Добавление окружения выберите вкладку Виртуальное окружение:
  2. Укажите имя виртуального окружения, выберите базовый интерпретатор и проверьте его расположение. В разделе Install packages from file (Устанавливать пакеты из файла) укажите путь к файлу requirements.txt, если нужно.
  3. Проверьте другие параметры в диалоговом окне.

Параметр Описание
Set as current environment (Установить в качестве текущего окружения) После создания окружения активирует его в выбранном проекте.
Set as default environment for new projects (Установить в качестве окружения по умолчанию для новых проектов) Автоматически устанавливает окружение и активирует его во всех новых проектах, которые создаются в Visual Studio. При использовании этого варианта виртуальное окружение следует размещать за пределами конкретных проектов.
View in Python Environments window (Просмотреть в окне окружений Python) Указывает, нужно ли открывать окно Окружения Python после создания окружения.
Make this environment available globally (Сделать это окружение доступным глобально) Указывает, нужно ли сделать это виртуальное окружение глобальным. При использовании этого варианта виртуальное окружение следует размещать за пределами конкретных проектов.

Активация существующего виртуального окружения

Если у вас уже есть виртуальное окружение, его можно активировать для проекта следующим образом:

  1. В обозревателе решений щелкните правой кнопкой мыши Окружения Python и выберите Добавить окружение.
  2. Откроется диалоговое окно Обзор. Найдите и выберите здесь папку с виртуальным окружением, а затем нажмите кнопку ОК. Если Visual Studio обнаружит в этом окружении файл requirements.txt, появится запрос на установку обнаруженных пакетов.
  3. Через несколько секунд виртуальное окружение появится в узле Окружения Pythonобозревателя решений. Виртуальное окружение не активируется по умолчанию, поэтому щелкните его правой кнопкой мыши и выберите действие Активировать окружение.

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

  1. В обозревателе решений щелкните правой кнопкой мыши виртуальное окружение и выберите Удалить.
  2. В Visual Studio вам будет предложено выбрать нужное действие (убрать или удалить виртуальное окружение). Вариант Убрать означает, что окружение исчезнет из проекта, но сохранится в файловой системе. Если выбрать Удалить, окружение убирается из проекта и все его файлы удаляются из файловой системы. Это действие не затрагивает базовый интерпретатор.

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

В Обозревателе решений можно развернуть узел любого окружения, чтобы быстро просмотреть установленные в нем пакеты (те, которые можно импортировать и применять в коде, когда активно это окружение):

Python packages for an environment in Solution Explorer

Чтобы установить новые пакеты, щелкните окружение правой кнопкой мыши и выберите действие Manage Python Packages (Управление пакетами Python). В окне Окружения Python откроется соответствующая вкладка Пакеты. На вкладке Пакеты введите условие поиска (обычно это имя пакета), и Visual Studio отобразит все подходящие пакеты.

Пакеты (и зависимости) в Visual Studio для большинства окружений скачиваются из репозитория Python Package Index (PyPI). В нем же вы можете искать доступные пакеты. В строке состояния Visual Studio и окне вывода отображаются сведения об установке. Чтобы удалить пакет, щелкните его правой кнопкой мыши и выберите Удалить.

Обычно диспетчер пакетов conda по умолчанию использует канал https://repo.continuum.io/pkgs/ , но доступны и другие каналы. Дополнительные сведения см. в статье Управление каналами (docs.conda.io).

Не забывайте, что отображаемые записи могут быть неточными, а задания установки и удаления — ненадежными или недоступными. Visual Studio использует диспетчер пакетов pip, если он доступен, и при необходимости скачивает и устанавливает его. Visual Studio также может использовать диспетчер пакетов простой установки (easy_install). Здесь же отображаются пакеты, установленные с помощью команд pip или easy_install из командной строки.

Обратите внимание, что сейчас Visual Studio не поддерживает использование conda для установки пакетов в окружении Conda. Вместо этого используйте conda из командной строки.

Если пакет содержит исходный код собственных компонентов в файлах с расширением .pyd, попытка pip установить пакет завершается сбоем. Если необходимая версия Visual Studio не установлена, pip не может скомпилировать эти компоненты. В этом случае отображается такое сообщение: Ошибка: не удалось найти vcvarsall.bat. Как правило, диспетчер easy_install может скачать предварительно скомпилированные двоичные файлы. Подходящий компилятор для более старых версий Python можно скачать по адресу https://python.en.uptodown.com/windows/versions. Дополнительные сведения см. в записи блога команды разработчиков Python How to deal with the pain of “unable to find vcvarsall.bat” (Что делать в случае возникновения ошибки «Не удалось найти vcvarsall.bat»).

Связанный контент

  • Управление окружениями Python в Visual Studio
  • Использование файла requirements.txt для зависимостей
  • Пути поиска
  • Справочная информация по окну «Окружения Python»

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

Доброе время суток, подскажите пожалуйста столкнулся с такой проблемой.
Когда отдаю проект админам я все используемые пакеты в venv записываю в requirements.txt
Они там накатывают проект используя pip3 install -r requirements.txt
В чем суть вопроса: в ходе разработки приложения, я устанавливаю какой то пакет что то пробую, иногда что то не получается или другой пакет для решения данной задачи подходит лучше. И часто разработчики забывают удалять этот пакет. Он остается в зависимостях в venv и соответственно попадает в requirements.txt. Админы накатывают этот пакет хотя реально он там и не используется.

Вопрос, можно ли как то автоматически выявить такие пакеты и избавится от них?
Например автоматически деинсталировать их что бы они не попадали в requirements.txt

Тут наверное нужна какая то штука которая бы анализировала импорты в файлах проекта.
Но что то такова я не нашел.

  • Вопрос задан 27 мая 2023
  • 270 просмотров

Комментировать
Решения вопроса 1

Vindicar

Потому что надёжного метода анализа зависимостей нет.
Импорты в питоне могут быть условными, выполняться в разное время, или вообще выполняться динамически через importlib.
Я бы сказал, вспомнить, какие пакеты тебе требуются, очистить окружение, поставить их, погонять приложение и пособирать недостающее.

А на будущее — когда тестируешь пакет, делай отдельную ветку в системе управления версиями, и отдельное окружение. Только когда пакет устоялся, делаешь merge.

Как удалить venv python

Скачай курс
в приложении

Перейти в приложение
Открыть мобильную версию сайта

© 2013 — 2023. Stepik

Наши условия использования и конфиденциальности

Get it on Google Play

Public user contributions licensed under cc-wiki license with attribution required

Установка и использование virtualenv в Python

virtualenv — это инструмент для создания изолированной среды Python. У такой среды есть отдельна установка python, при ее использовании загруженные библиотеки недоступны другим. Можно сделать так, чтобы у этой среды не было доступа к глобальным библиотекам.

Virtualenv — простой и рекомендованный способ настройки среды Python.

Отличия virtualenv и venv

Venv — это пакет, который идет по умолчанию с Python 3.3+. В версии Python 2 его нет.

Virtualenv — более продвинутая библиотека. По ссылке можно ознакомиться с основными отличиями.

Виртуальную среду можно создать и с помощью venv, но все-таки рекомендуется установить и использовать virtualenv для полноценной работы.

Установка virtualenv с помощью pip

Для установки virtualenv с Python нужно использовать pip. Желательно предварительно обновить этот инструмент.

python -m pip install --upgrade pip

Или используйте python3 , если python ссылается на 2 версию.

После обновления можно установить и virtualenv:

pip install virtualenv # или pip3

Создание виртуальной среды

1. Перейдите в директорию, в которой вы хотите создать виртуальную среду(например папка проекта).

~$ cd test ~/test$

2. Создайте виртуальную среду, при необходимости указав конкретную версию Python. Следующая команда создает virtualenv с именем venv_name и использует флаг -p , чтобы указать полный путь к версии Python:

virtualenv -p /usr/bin/python venv_name # или virtualenv venv_name

Назвать среду можно как угодно

После выполнения команды вы увидите логи:

Running virtualenv with interpreter /usr/bin/python Already using interpreter /usr/bin/python Using base prefix '/usr' New python executable in /home/username/test/venv_name/bin/python Installing setuptools, pip, wheel. done.

Эта команда создает локальную копию среды. Работая с ней, важно не забывать об активации, чтобы использовались нужные версии конкретных инструментов и пакетов.

Если при установке возникла ошибка setuptools pip failed with error code 1` error , используйте следующую команду, чтобы решить проблему:

pip install --upgrade setuptools # или pip3

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

source venv_name/bin/activate

После этого название текущей среды отобразится слева от символа ввода: (venv_name) username@desctop:~/test$

Теперь при установке любого пакета с помощью pip он будет размещаться в папках этой среды, изолированно от глобальной установки.

Деактивации virtualenv

После завершения работы деактивировать виртуальную среду можно с помощью команды deactivate .

Введите ее и приставка venv_name пропадет. Вы вернетесь к использованию глобально версии python.

Удаление виртуальной среды

Для удаления виртуальной среды достаточно просто удалить папку проекта. Для этого используется следующая команда:

rm -rf venv_name

Решение популярных ошибок

Ошибки при создании virtualenv. При попытке создать virtualenv с Python 3.7 могут возникнуть следующие ошибки.

AttributeError: module 'importlib._bootstrap' has no attribute 'SourceFileLoader' OSError: Command /home/username/venv/bin/python3 -c "import sys, pip; sys. d\"] + sys.argv[1:]))" setuptools pip failed with error code 1

Для их исправления нужно добавить следующую строку в .bash_profile.

export LC_ALL="en_US.UTF-8"

Использование полного пути к виртуальной среде. Может быть такое, что при использовании команды virtualenv будет использована не та версия. Для решения проблемы нужно лишь задать полные пути как к virtualenv, так и к Python в системе.

А получить их можно с помощью этой команды:

/home/username/opt/python-3.8.0/bin/virtualenv -p /home/username/opt/python-3.8.0/bin/python3 venv

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *