我已经在3.5.0之上安装了Python3.5.1,现在我想更新一个使用3.5.1的虚拟环境,但是我找不到一种简单的方法。看来,我必须删除虚拟环境,然后用新版本的Python重新构建它。有没有人有更简单的方法来做这件事?
发布于 2016-01-01 18:16:37
对于较小的升级(3.5.0 -> 3.5.1或更一般的情况下,只有x.y.z中的z正在更改),您不需要做任何事情。
virtualenv在其bin子目录中有一个指向系统Python可执行文件的符号链接,如下所示:
python -> python3.5
python3 -> python3.5
python3.5 -> /usr/bin/python3.5由于/usr/bin/python3.5在从3.5.0升级到3.5.1时被替换,所以virtualenv将自动使用新的Python。
如果您正在进行更大的升级(x或x.y.z中的y ),则需要升级虚拟服务器。
如果您使用的是 command (在Python3.3中引入),那么它有一个--upgrade标志:
假设Python已就地升级,则升级环境目录以使用此版本的Python。
…这应该能起作用。注意,在Python3.6中,pyvenv命令正在被python3 -m venv替换。
如果您使用的是virtualenv包而不是内置命令,那么最简单的方法就是删除virtualenv并使用新版本的pip install -r requirements.txt重新创建它,然后运行pip install -r requirements.txt。
这假设您有一个项目的requirements.txt文件。您可以通过在升级Python之前运行pip freeze --local > requirements.txt并重新创建虚拟and来创建其中一个文件,其中列出了在您的虚拟环境中安装的所有包。
https://stackoverflow.com/questions/34558185
复制相似问题