python3virtualen中的pip安装错误

2024-04-29 03:34:39 发布

您现在位置:Python中文网/ 问答频道 /正文

我创建了一个Python 3 virtualenv,如下所示:

mkproject -p python3 flowerid

但是当我尝试安装任何带有pip的东西(在这个virtualenv中)时,我得到了一个错误:

^{pr2}$

在“futures”导入到“/Library/Python/2.7”之前,一切看起来都很正常。在

我试图在创建virtualenv时设置“--no-site-packages”,但这并没有改变任何东西(它也不应该因为它是默认设置)。在

我试着用pip3代替,同样的事情。在

我试图用easy_install pip重新安装pip(在virtualenv中),同样的事情。。。在

还有别的主意吗?谢谢你的帮助。在

注意:我通常使用Python2.7—我确实在全局范围内安装了许多Python2.7包—也许这就是导致冲突的原因?在

我在OSX El Capitan。在

更新: 我的virtualenv似乎被激活了——它开始使用我的virtualenv中的pip和python。以及“whichpython”使用virtualenv中的python。在

(flowerid) nicolas@~/venv_projects/flowerid$ which python
/Users/nicolas/.virtualenvs/flowerid/bin/python 

Tags: pipnovirtualenvpackages错误pip3librarysite
3条回答

尝试替换/Library/Python/2.7/site-packages/concurrent/futures中的行/_基准.py在

    raise type(self._exception), self._exception, self._traceback

用这个

^{pr2}$

尝试使用pip3而不是pip命令。因为您使用的是python3。在

好吧,我想好了。是我的环境变量PYTHONPATH把事情搞得一团糟-告诉Python查看python2.7库。。。我在我的bashrc里设置我的Python路径。在

所以解决方案是在激活时更改PYTHONPATH,在停用时设置回原来的设置(这不是默认设置,这让我有点困惑…)

因此在/Users/nicolas/.virtualenvs/flowerid/bin/activate中添加:

# Fix PYTHONPATH imports
export OLD_PYTHONPATH="$PYTHONPATH"
export PYTHONPATH="/Users/nicolas/.virtualenvs/flowerid/lib/python3.6/site-packages/"

{And> ^{pr2}$

这里是我发现问题的地方:virtualenv no-site-packages and pip still finding global packages?

解决方案是: How do you set your pythonpath in an already-created virtualenv?

相关问题 更多 >