在virtualenv中使用不同的Python版本

1743 投票
42 回答
1990169 浏览
提问于 2025-04-15 14:53

我该如何为指定版本的Python创建一个虚拟环境呢?

42 个回答

229

以下是你在共享主机环境中安装和编译Python的步骤,然后从你的Python版本创建一个venv(虚拟环境)。如果你要安装的是Python 2.7.9,可以按照以下方式操作:

mkdir ~/src
wget http://www.python.org/ftp/python/2.7.9/Python-2.7.9.tgz
tar -zxvf Python-2.7.9.tgz
cd Python-2.7.9
mkdir ~/.localpython
./configure --prefix=$HOME/.localpython
make
make install

虚拟环境

cd ~/src
wget https://pypi.python.org/packages/5c/79/5dae7494b9f5ed061cff9a8ab8d6e1f02db352f3facf907d9eb614fb80e9/virtualenv-15.0.2.tar.gz#md5=0ed59863994daf1292827ffdbba80a63
tar -zxvf virtualenv-15.0.2.tar.gz
cd virtualenv-15.0.2/
~/.localpython/bin/python setup.py install
virtualenv ve -p $HOME/.localpython/bin/python2.7
source ve/bin/activate   

当然,这个方法适用于任何你想要复制你工作和部署时所用的环境的情况。

656

从Python 3.3开始,官方文档建议使用标准库来创建虚拟环境:

python3 -m venv "my_env_name"

另外,如果我们想要使用特定版本的Python,比如说3.6,那么我们可以使用

python3.6 -m venv "my_env_name"

确保在你的系统Python版本上安装所提到的Python版本。

2004

注意:对于Python 3.3 及以上版本,请查看下面 Aelfinn 的回答


在创建虚拟环境时,可以使用 --python(或者简写为 -p)这个选项来指定你想要使用的 Python 版本,比如:

virtualenv --python="/usr/bin/python2.6" "/path/to/new/virtualenv/"

撰写回答