Как создать виртуальную среду Python в приложении Ubuntu на Windows, используя ‘venv’, а не ‘virtualenv’?

Вопрос или проблема

Я использую приложение Ubuntu на Windows, работающее на Подсистеме Windows для Linux. Поэтому начальный вопрос в том, поддерживаются ли виртуальные окружения Python. Учитывая мое пока еще ограниченное понимание виртуальных окружений Python, я думаю, что они поддерживаются в приложении Ubuntu на Windows. Вот информация о версии:

Приложение Windows Ubuntu 1804.2019.521.0

Версия Ubuntu 18.04 (bionic)

Версия Python 3.6.7 (насколько я помню, она была установлена по умолчанию).

Моя мотивация для использования venv – это пост на Reddit:

venv по своей природе является частью самого Python и имеет доступ к внутренним механизмам Python, что означает, что он может делать вещи правильным образом с гораздо меньшим количеством хака… …Таким образом, venv можно рассматривать как virtualenv, сделанный правильно, с благословением и поддержкой разработчиков Python.

Похожие вопросы возникли, когда я ввел свой вопрос, но я не нашел ни одного, который бы решил мою проблему.

Вот один пост:

Поскольку вы специально установили python3.6 вместо стандартной версии python3 Ubuntu, которая является python3.5, вам нужно установить python3.6-venv вместо python3-venv, так как это будет соответствовать python3.5-venv. Для этого вы можете использовать sudo apt install python3.6-venv.

Другой пост от 01/2018 говорил, что python3.6 -m venv myvenv заработал после переустановки Python3.6.4. Я избегаю переустановки пока.

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

1) Открыл Ubuntu

2) Перешел в директорию, где хочу создать виртуальное окружение.

 /home/dgrucza/python-virtual-environments

3) Ввел python3 -m venv env. Это вернуло следующее:

Виртуальное окружение не было создано успешно, потому что ensurepip недоступен. На системах Debian/Ubuntu вам нужно установить пакет python3-venv, используя следующую команду.

apt-get install python3-venv

Вам может понадобиться использовать sudo с этой командой. После установки пакета python3-venv создайте ваше виртуальное окружение заново.

Неудачная команда: [‘/home/dgrucza/python-virtual-environments/evn/bin/python3’, ‘-Im’, ‘ensurepip’, ‘–upgrade’, ‘–default-pip’]

4) Попробовал установить venv, введя sudo apt-get install python-venv. После ввода пароля в приглашении это вернуло следующее:

Чтение списков пакетов… Готово
Построение дерева зависимостей
Чтение информации о состоянии… Готово
Пакет python3-venv недоступен, но на него ссылается другой пакет.
Это может означать, что пакет отсутствует, устарел или
доступен только из другого источника.

E: Пакет ‘python3-venv’ не имеет кандидата на установку

5) Также пробовал ввести python3.6 -m venv myenv, но получил то же сообщение.

Виртуальное окружение не было создано успешно, потому что ensurepip недоступен. На системах Debian/Ubuntu вам нужно установить пакет python3-venv, используя следующую команду.

apt-get install python3-venv

Вам может понадобиться использовать sudo с этой командой. После установки пакета python3-venv создайте ваше виртуальное окружение заново.

Неудачная команда: [‘/home/dgrucza/myenv/bin/python3.6’, ‘-Im’, ‘ensurepip’, ‘–upgrade’, ‘–default-pip’]

Что я сделал до сих пор:

  1. Открыть терминал
  2. Перейти в нужную директорию
  3. Ввести python3 -m venv name_of_virtual_env

Если это не сработает, не могли бы вы обновить ваш вопрос, чтобы показать вывод терминала?
ИЗМЕНЕНИЕ
Я только что протестировал установку venv на виртуальной машине Lubuntu 19.04:
sudo apt install python3-venv
Я смог создать виртуальное окружение с вышеупомянутой командой. Однако у меня уже был установлен Spyder3, поэтому некоторые зависимости могли прийти с ним.
И, как предложил Томас Уард, я делюсь своими источниками:
Источники программного обеспечения

Ответ или решение

Создание виртуального окружения Python в приложении Ubuntu на Windows с использованием ‘venv’

Создание виртуального окружения с использованием модуля venv в Ubuntu на Windows, работающем через Windows Subsystem for Linux (WSL), является важной задачей для разработчиков, желающих изолировать зависимости своих проектов. В данной инструкции мы подробно рассмотрим шаги, необходимые для успешного создания виртуального окружения.

Шаг 1: Подготовка системы

Для начала убедитесь, что у вас установлены необходимые компоненты:

  1. Версия Python: Проверьте установленную версию Python с помощью команды:

    python3 --version

    Убедитесь, что это Python 3.6 или выше.

  2. Установка модуля venv:
    Ваша текущая установка Python может не включать модуль venv по умолчанию, особенно если вы используете Python 3.6, как указано в вашем описании. Необходимо установить соответствующий пакет.

    Для установки python3.6-venv, выполните следующие команды в терминале:

    sudo apt update
    sudo apt install python3.6-venv

    Если вы столкнетесь с ошибкой, что пакет python3.6-venv недоступен, возможно, вам нужно будет сначала установить несколько обновлений системы.

Шаг 2: Создание виртуального окружения

Теперь, когда у вас установлен модуль venv, вы готовы создать виртуальное окружение:

  1. Откройте терминал.

  2. Перейдите в директорию, где вы хотите создать виртуальное окружение. Например:

    cd /home/dgrucza/python-virtual-environments
  3. Создайте виртуальное окружение с помощью следующей команды:

    python3.6 -m venv env

    Это создаст директорию env, содержащую все файлы для вашего виртуального окружения.

Шаг 3: Активация виртуального окружения

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

source env/bin/activate

После активации вы увидите изменение в командной строке, которое указывает на то, что вы находитесь внутри виртуального окружения.

Шаг 4: Установка пакетов

Теперь, когда ваше виртуальное окружение активно, вы можете устанавливать необходимые пакеты с помощью pip. Например, чтобы установить пакет requests:

pip install requests

Шаг 5: Деактивация виртуального окружения

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

deactivate

Решение возможных проблем

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

  • Убедитесь, что ваша система обновлена (sudo apt update и sudo apt upgrade).
  • Проверьте, что установленный пакет python3.6-venv действительно соответствует установленной версии Python. Если у вас несколько версий Python, убедитесь, что вы используете правильную.

Заключение

Создание виртуального окружения с использованием venv в Ubuntu на Windows может показаться сложным на первом этапе, особенно при наличии различных версий Python. Однако следуя данным шагам, вы сможете успешно изолировать зависимости вашего проекта и настроить рабочую среду. Этот процесс поможет избежать конфликтов между пакетами и обеспечит больше гибкости в разработке ваших приложений на Python.

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

Капча загружается...