entorno - python virtualenv ubuntu
¿Cómo especificar la versión de Python utilizada para crear el entorno virtual? (4)
Mis entornos virtuales de Python usan
python3.6
cuando los creo usando
virtualenv
~ $ virtualenv my_env
pero necesito usar
python3.5
ya que 3.6
no es compatible actualmente con
Opencv3
.
Intenté usar el
--python=<py_version>
al crear un entorno virtual, pero esto no funciona.
¿Cómo especifico la versión de python (3.x) para instalar usando
virtualenv
para Mac y / o Linux?
A partir de la versión 3.3, python incluye un paquete llamado
venv
.
Sin embargo, ese paquete no proporciona las mismas funcionalidades que el paquete
virtualenv
tradicional.
venv
permite crear entornos virtuales solo para la versión de python para la que está instalado.
virtualenv
permite crear entornos virtuales para diferentes versiones de python al proporcionar la ruta al binario.
Crear envs virtuales para diferentes versiones de python:
Entonces, suponiendo que uno tenga python 2.7 y python 3.6 instalados en
/path/to/
y quiera crear el entorno virtual llamado respectivamente
env-py36
con python 3.6 y
env-py27
con python 2.7
# create a virtual env with python3''s venv :
/path/to/python36/bin/python3 -m venv /my/python-venvs/env-py36
. /my/python-venvs/env-py36/bin/activate
# we''re now running python 3''s "env-py36" virtual env, we want to install the "virtualenv" package
pip install virtualenv
deactivate
# now use virtualenv to create a virtual environment for python 2.7
/my/python-venvs/env-py36/bin/virtualenv --python=/path/to/python27/bin/python /my/python-venvs/env-py27
Usando python 3.3+ venv
Python 3.3+:
/path/to/python3/bin/python3 -m venv ENV_DIR
Python 3.3 a 3.5 (obsoleto en 3.6+):
/path/to/python3/bin/pyvenv ENV_DIR
Fuentes:
Alternativamente, creo que podría usar la versión específica de Python para crear el entorno virtual. De esa manera, sabrás con certeza que es la versión correcta:
$ python3.5 -m venv test35
$ ./test35/bin/python
Python 3.5.2 (v3.5.2:4def2a2901a5, Jun 26 2016, 10:47:25)
[GCC 4.2.1 (Apple Inc. build ) (dot 3)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>>
Referencia en https://docs.python.org/3.5/library/venv.html
Estoy trabajando en todos los ubuntu y MacOS
Ubuntu:
virtualenv -p python3.6 environment_file
Mac OS:
virtualenv -p python3.6 environment_file
Creo que es lo mismo
Suponiendo que ha instalado
python3
o cualquier versión deseada de Python (2.6, 2.7, 3.5, 3.6), ahora, mientras crea el entorno virtual, pase directamente la ruta ejecutable de python.
Por lo tanto, aquí hay algunos ejemplos válidos
$ virtualenv new_p2_env # Creates a new default python environment (usually python 2)
$ virtualenv -p python3 new_p3_env # Creates a new default python3 (python3 must be a valid command i.e found in the PATH)
Y última
# Directly point to any version of python binary, this can be even another virtualenv''s bin/python.
$ virtualenv -p /path/to/any/python/executable new_env