我为Python 2.5创建了一个virtualenv,并希望将其“升级”为Python 2.6。
以下是最初的设置方式:
virtualenv --no-site-packages -p python2.5 myenv
我现在在同一目录中运行virtualenv进行升级:
virtualenv --no-site-packages -p python2.6 myenv
...
Not overwriting existing python script myenv/bin/python (you must use myenv/bin/python2.6)
...
Overwriting myenv/bin/activate with new content
默认的python仍然是2.5,即使我也可以指定2.6。有没有办法完全删除 2.5并让'bin / python'指向2.6?
答案 0 :(得分:56)
您可以使用Python 2.6 virtualenv来“复制”现有目录。您必须重新安装所有已安装的模块。我经常有一个用于开发模块的虚拟目录,以及与许多Python版本相同的目录virtualenv,它工作得很好。 :)
答案 1 :(得分:4)
您应该使用virtualenv
创建新的python2.6
,然后在激活新的env后,使用其python2.6
及其easy_install
来安装任何网站包的新版本你需要。请注意virtualenv
的路径名称已硬连线到环境中的各种文件中,因此,当您准备切换到它时,请更改启动脚本等,以引用新的virualenv
将路径复制到旧目录并修改其中的路径名称时要非常小心。
答案 2 :(得分:4)
在Python 3.3+中,venv支持--upgrade标志
--upgrade Upgrade the environment directory to use this version
of Python, assuming Python has been upgraded in-place.
用法:
python -m venv --upgrade YOUR_VENV_DIRECTORY
我刚刚在几个项目上将venv从Python 3.7.x升级到3.8,没有任何问题。
答案 3 :(得分:3)
在CentOS上安装第二个Python
安装到差异本地
configure --prefix=/opt/virtualenv/python
make && make install
使用new python创建虚拟环境
virtualenv /opt/virtualenv --python=/opt/python276/bin/python
注意:如果需要,可以使用其他用户
完成chown pyuser -R /opt/virtualenv
su - pyuser
source /opt/virtualenv/bin/activate
python -v
创建虚拟环境:
virtualenv /opt/virtualenv
su - infograficos
source bin/activate
使用python 2.7安装pip(在virtualenv内部)
easy_install pip
答案 4 :(得分:0)
如果您正在使用OS X,请尝试this,如果您希望将Python升级到次要版本(例如2.7.6到2.7.8),同时保持第三方库的正常运行。< / p>
在安装了Django的5个不同虚拟环境中,它适用于我。