Python / pip错误的解释器:没有这样的文件或目录

时间:2019-01-24 11:03:10

标签: python pip homebrew

我似乎已经失去了Mac上所有的python软件包。

我在下面输入了从python3.6升级到python3.7的命令:

brew upgrade python

现在,当我在终端中输入ipython3时,它说:

-bash: /usr/local/bin/ipython3: /usr/local/opt/python/bin/python3.6: bad interpreter: No such file or directory

但是,在执行Brew升级之前,我可以使用ipython3片刻。此外,我认为我已经丢失了所有python软件包,因为当我在Python3中执行导入模块时,它说:

ModuleNotFoundError: No module named *examplepythonpackage*

我之前安装的python软件包永久丢失了吗,我现在必须单独重新安装它们吗?

我也无法在bash终端中运行$ ipython3

-bash: /usr/local/bin/ipython3: /usr/local/opt/python/bin/python3.6: bad interpreter: No such file or directory

供参考:

$ which python
    /usr/bin/python
$ which python3
    /usr/local/bin/python3
$ pip --version
    pip 18.1 from /Library/Python/2.7/site-packages/pip-18.1-py2.7.egg/pip (python 2.7)
$ pip3 --version
    pip 18.1 from /usr/local/lib/python3.7/site-packages/pip (python 3.7)

2 个答案:

答案 0 :(得分:1)

ipython与其下方使用的Python解释器和库之间的链接是在安装时建立的(而不是每次运行时都动态地建立),所以我认为如果先删除然后再解决,您的问题将得到解决。重新安装ipython,即:

brew rm ipython
brew install ipython

如果您想了解这一点,请像下面这样查看您的ipython脚本:

more $(which ipython)

答案 1 :(得分:-1)

您的软件包没有消失,但对于新python不可见。您可能会尝试诱使python 3.7在python3.6目录中寻找软件包,但随后许多软件包将无法工作,尤其是扩展软件包,因为3.6和3.7与ABI不兼容。

基本上,这样的升级需要您重新安装所有软件包。