我有一个当前使用python 2.5.4运行的Debian系统.我得到了virtualenv正确安装,一切正常.我是否有可能使用不同版本的Python的virtualenv?
我编译了Python 2.6.2,并希望将它与一些virtualenv一起使用.是否足以覆盖二进制文件?或者我是否必须更改库中的某些内容?
我有一个为Python 2.5创建的virtualenv,并希望将其"升级"为Python 2.6.
以下是最初的设置方式:
virtualenv --no-site-packages -p python2.5 myenv
Run Code Online (Sandbox Code Playgroud)
我现在在同一目录中运行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
Run Code Online (Sandbox Code Playgroud)
默认的python仍然是2.5,即使我也可以指定2.6.有没有办法完全删除 2.5并将'bin/python'指向2.6而不是?
我使用Macports在我的Mac上安装了各种版本的python.当我选择python 2.7 via时$ port select python python27,virtualenvwrapper工作得很好.
但是如果我选择另一个版本的python,即2.6,virtualenvwrapper会生成一条错误消息:ImportError:没有名为virtualenvwrapper.hook_loader的模块
我检查了我的.profile并且设置VIRTUALENVWRAPPER_PYTHON为/opt/local/bin/python,所以在我看来virtualenvwrapper应该工作,无论我选择了哪个python.
知道什么会导致virtualenvwrapper在切换python版本时生成.hook_loader错误吗?
我的virtualenv中有python 3.4,但在升级ubuntu到16.04后python升级到3.5所以在virtualenv中的python崩溃了这些错误:
Could not find platform independent libraries <prefix>
Could not find platform dependent libraries <exec_prefix>
Consider setting $PYTHONHOME to <prefix>[:<exec_prefix>]
Fatal Python error: Py_Initialize: Unable to get the locale encoding
ImportError: No module named 'encodings'
Current thread 0x00007f2f2dbcb700 (most recent call first):
fish: “python” terminated by signal SIGABRT (Abort)
Run Code Online (Sandbox Code Playgroud)
我该如何解决?
我已经在3.5.0之上安装了Python 3.5.1并且我现在想要更新虚拟环境以使用3.5.1但是我找不到简单的方法来实现这一点.看起来我将不得不删除虚拟环境,然后使用新版本的Python重建它.有没有人有更简单的方法呢?
我安装了Python3.10,并且在我一直在从事的项目中有一个venv。我不明白如何轻松升级。我的背景主要是 Node 和 JS,这肯定更简单,更容易更改版本。
我只是想创建一个新的 venv 但这不起作用
mpaccione@T430:~/Projects/investing/react-flask-app/server$ python3.10 -m venv ~/Projects/investing/react-flask-app/server
Error: Command '['/home/mpaccione/Projects/investing/react-flask-app/server/bin/python3.10', '-Im', 'ensurepip', '--upgrade', '--default-pip']' returned non-zero exit status 1.
Run Code Online (Sandbox Code Playgroud)
我还想也许我可以更改 pyvenv 配置可以更改,但这也不起作用
home = /usr/bin
include-system-site-packages = false
version = 3.8
Run Code Online (Sandbox Code Playgroud)
到
home = /usr/bin/python3.10
include-system-site-packages = false
version = 3.10
Run Code Online (Sandbox Code Playgroud)
有没有一种简单直接的方法可以改变这种情况?我确信这是一个常见的用例!