pytest想要我们错误的python3版本

2024-04-25 08:32:21 发布

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

出于某种原因,pytest正在寻找python3.4。在

$pytest
-bash: /usr/local/bin/pytest: /usr/local/opt/python3/bin/python3.4: bad interpreter: No such file or directory

我使用的是OSX,我以前安装了python3.4,但现在已经使用python3.5一段时间了。 编辑:我可能升级不正确,这很可能导致此问题。在

我使用brew同时安装了3.4和3.5。在

^{pr2}$

我正在使用一个虚拟env与python3.5和pip3。我有以下几套:

$echo $VIRTUALENVWRAPPER_PYTHON
/usr/local/bin/python3.5
$ echo $VIRTUALENVWRAPPER_VIRTUALENV
/usr/local/bin/virtualenv-3.5

Python3和pip很好:

$ which python
<blah>/.virtualenvs/<blah>/bin/python
$ python
Python 3.5.1 (default, Dec 26 2015, 18:08:53)
$ pip -V
pip 8.1.1 from /<blah>/.virtualenvs/<blah>/lib/python3.5/site-packages (python 3.5)

在安装pytest时,我尝试过使用pip标记--isolated标志:

$ pip install -h
...
--isolated    Run pip in an isolated mode, ignoring environment variables and user configuration.

结果是这样的:

$ pip install --isolated pytest
Collecting pytest
  Using cached pytest-2.9.1-py2.py3-none-any.whl
Requirement already satisfied (use --upgrade to upgrade): py>=1.4.29 in /<blah>/.virtualenvs/<blah>/lib/python3.5/site-packages (from pytest)
Installing collected packages: pytest
Successfully installed pytest-2.9.1

但是pytest仍然在寻找python3.4。在

python3.4中肯定有一些东西,pytest安装不幸地发现了它。在

有人能解释一下吗? 谢谢!在


Tags: installpipfromechobinpytestlibpackages
1条回答
网友
1楼 · 发布于 2024-04-25 08:32:21

啊哼。在

要运行pytest,请使用:

$py.test

而不是

^{pr2}$

pytest可执行文件/usr/local/bin/pytest有一年多的历史,我假设是一个旧的安装。在

ls -plah /usr/local/bin/pytest
-rwxr-xr-x  1 root  admin   154B 15 Apr  2015 /usr/local/bin/pytest

我删除了它,用pip卸载并重新安装了pytest。重新安装不会重新创建/usr/local/bin/pytest。事后看来,如果pip确实把任何东西放在活动.virtualenv目录之外,我会感到惊讶的。在

总而言之:

相关问题 更多 >