gpt4 book ai didi

python - 为什么 virtualenvwrapper 创建与 python2 而不是 python3 相关的路径?

转载 作者:行者123 更新时间:2023-12-01 02:37:21 26 4
gpt4 key购买 nike

我更新了 mkvirtualenv 和 virtualenv 的版本

$ sudo pip install --upgrade virtualenv virtualenvwrapper

因为我一生只使用 Python 2,现在想使用 Python 3。virtualenvwrapper 有一些问题。

然后我尝试为我的 python3 安装创建一个虚拟环境:

$ mkvirtualenv py3test -p /usr/bin/python3

环境在~/.virtualenvs/py3test中创建。一旦激活,我想安装我制作的软件包:

(py3test)$ pip install python-cantrips (py3test)$ pip freeze

并且该软件包已正确安装。然后我安装 ipython 并运行它:

(py3test)$ pip install ipython (py3test)$ ipython

然后我适本地输入ipython。但后来我...

import cantrips

它会因ImportError而爆炸。然后我检查 sys.path。问题就在这里: sys.path 包含如下路径:'/home/myuser/.virtualenvs/py3test/lib/python2.7/site-packages'。我不记得路径是否准确,因为我现在不在这样的计算机中。但我可以肯定一件事:环境是用 python3 创建的(我的 virtualenv 中的目录不是 python2.7,而是 python3.5)。

那么:为什么 virtualenv 为 python3 创建环境,却添加了路径,就好像它是 python2.7 环境一样?

最佳答案

找到了!

virtualenvvirtualenvwrapper 没有问题。问题出在 ipython 上。实际上,ipython 没有什么问题,但在 virtualenv 中访问脚本的方式没有问题。

在全局范围内,我安装了ipython(它与全局python27一起使用)。当我在本地 python3 环境中安装 ipython 时,(shell)路径不会更新,直到我以某种方式再次刷新环境(例如停用、再次激活)。因此,当我再次尝试时,ipython 是合适的(我的环境中的本地 ipython 为 3.5),并且生成的路径是预期的路径。

关于python - 为什么 virtualenvwrapper 创建与 python2 而不是 python3 相关的路径?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46083869/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com