виртуальная среда на python

#python #tensorflow #virtualenv #pyenv

#python #tensorflow #virtualenv #pyenv

Вопрос:

Я хочу использовать python версии 3.6 или 3.7, потому что он поддерживает tensorflow1.15. Я пытаюсь создать виртуальную среду на моем ПК с Linux

Способ 1 :

 mkdir project,
cd project,
python3.7 -m venv myvenv,
Error "bash: python3.7: command not found",
 

Способ 2 :

 virtualenv myvenv --python=python3.7;
Error "RuntimeError: failed to find interpreter for Builtin discover of python_spec='python3.7'",
 

Помогите мне, как установить python 3.7 в виртуальной среде. Позже я хочу установить tensorflow 1.15 для продолжения моего проекта.

Ответ №1:

Сначала вам нужно установить Python 3.7 в вашей системе и установить его по умолчанию, и я предполагаю, что вы используете систему на базе Linux

 sudo apt install python3.7
sudo update-alternatives --config python
sudo update-alternatives  --set python /usr/bin/python3.7
 

Затем вы можете создать свой venv с помощью python3.7

Если вы этого не сделаете, в целом лучшим решением для науки о данных и машинного обучения является использование Andaconda. Таким образом, вы могли бы легко управлять своей виртуальной средой. Проверьте эту таблицу для получения дополнительной информации.

Ответ №2:

Более простым способом было бы использовать conda для создания новой среды:

conda create -n myenv python=3.7

Это работает легко, и я лично предпочитаю это, поскольку это уменьшает усилия по переходу к исходному файлу для активации новой среды

Ответ №3:

Установите новую версию Python, затем используйте ее в venv

Сначала загрузите и установите нужную версию Python, затем создайте виртуальную среду, которая использует эту недавно установленную версию Python.

Рекомендуемый способ python.org

Рекомендуемый способ управления виртуальными средами, начиная с Python 3.5 venv , — это модуль внутри самой стандартной библиотеки Python. Метод 1 в вашем случае.

Источник: https://docs.python.org/3/library/venv.html#creating-virtual-environments

Это не то же самое virtualenv , что пакет третьей стороны, за пределами стандартной библиотеки Python.

Источник: https://pypi.org/project/virtualenv /

Установите другую версию Python

Например, в Ubuntu 20.04 для установки Python 3.7:

 # Update package lists
me@mydevice:~$ sudo apt update

# Add the deadsnakes repository
me@mydevice:~$ sudo add-apt-repository ppa:deadsnakes/ppa

# Install Python 3.7
me@mydevice:~$ sudo apt install python3.7
 

Установите пакет venv и создайте виртуальную среду venv

 # Install the venv package for Python 3.7
me@mydevice:~$ sudo apt install python3.7-venv

# Make a folder for venv virtual environments
me@mydevice:~$ mkdir ~/.venvs

# Create a new venv virtual environment with Python 3.7 in it
me@mydevice:~$ python3.7 -m venv ~/.venvs/my-venv-name

# Activate the new venv
me@mydevice:~$ source ~/.venvs/my-venv-name/bin/activate
(my-venv-name) me@mydevice:~$
 

Проверьте версию Python в виртуальной среде venv

 # Check the Python version inside the venv:
(my-venv-name) me@mydevice:~$ python -V
Python 3.7.12
 

Деактивировать виртуальную среду

 (my-venv-name) me@mydevice:~$ deactivate
me@mydevice:~$
 

Проверьте версию Python вне любых виртуальных сред

 # Check Python version:
me@mydevice:~$ python -V
Python 3.8.10
 

Не устанавливайте новый Python в качестве системного по умолчанию

Системе Linux требуется, чтобы ее исходная версия Python использовалась по умолчанию для ее собственной функциональности. Системный Python, в случае Ubuntu 20.04 — Python 3.8, следует оставить по умолчанию, иначе система может стать нестабильной.

Более подробная информация здесь: https://unix.stackexchange.com/questions/652299/changing-pythons-default-version-breaks-ubuntu-20-04

Установите больше версий Python

Чтобы установить больше версий Python, просто измените номер версии с 3.7 на любую выбранную вами версию, доступную из репозитория deadsnakes.