Use different Python version with virtualenv
Just use the --python
(or short -p
) option when creating your virtualenv instance to specify the Python executable you want to use, e.g.:
virtualenv --python=/usr/bin/python2.6 <path/to/new/virtualenv/>
N.B. For Python 3.3 or later, refer to The Aelfinn's answer below.
Since Python 3, the Python Docs suggest creating the virtual environment with the following command:
python3 -m venv <myenvname>
Please note that venv
does not permit creating virtual environments with other versions of Python. For that, install and use the virtualenv
package.
Obsolete information
The pyvenv
script can be used to create a virtual environment
pyvenv /path/to/new/virtual/environment
but it has been deprecated since Python 3.6.
These are the steps you can follow when you are on a shared hosting environment and need to install & compile Python from source and then create venv
from your Python version. For Python 2.7.9. you would do something along these lines:
mkdir ~/srcwget http://www.python.org/ftp/python/2.7.9/Python-2.7.9.tgztar -zxvf Python-2.7.9.tgzcd Python-2.7.9mkdir ~/.localpython./configure --prefix=$HOME/.localpythonmakemake install
virtual env
cd ~/srcwget https://pypi.python.org/packages/5c/79/5dae7494b9f5ed061cff9a8ab8d6e1f02db352f3facf907d9eb614fb80e9/virtualenv-15.0.2.tar.gz#md5=0ed59863994daf1292827ffdbba80a63tar -zxvf virtualenv-15.0.2.tar.gzcd virtualenv-15.0.2/~/.localpython/bin/python setup.py installvirtualenv ve -p $HOME/.localpython/bin/python2.7source ve/bin/activate
Naturally, this can be applicable to any situation where you want to replicate the exact environment you work and deploy on.