您拥有一整套不同的 Python 安装,以及至少一个您删除的以前的 Python 安装。
像这样的情况正是跑步的原因pip
or pip3
不再推荐直接使用,而是:
python3 -m pip install whatever
这保证了您绝对积极地运行pip
与任何事物相配python3
意味着,同时pip3
只是意味着你正在运行pip
与somePython 3.x,可能是您已安装的各种版本中的任何一个。
或者,更好的是,使用虚拟环境,这样您就可以信赖以下事实:python
and pip
是来自当前活动环境的命令,甚至不用担心它们在系统范围内的含义。
但是,如果您想知道如何陷入困境以及如何解决它:
Your python3
命令可能来自 Homebrew Python(你可以检查;ls -l /usr/local/bin/python3
看看它是否是某个内容的符号链接/usr/local/Cellar/python
).
Your pip3
命令来自不存在的 Python 3。最有可能的是,您安装了另一个 Python 3,它覆盖了pip3
从 Homebrew Python 3 中删除,然后卸载它,留下一个损坏的pip
behind.
最简单的事情就是rm /usr/local/bin/pip3
。然后,假设您希望 Homebrew Python 成为默认的python3
and pip3
,重做brew link python
命令。如果它向您显示任何警告或错误,则您还有其他问题需要修复。如果不,/usr/local/bin/pip3
现在应该是 Homebrew 3.6pip
, and which pip3
应该挑出/usr/local/bin/pip3
,一切都很好,直到下次你安装另一个 Python 3 并覆盖一堆东西。
更好的解决方法是选择一种安装 Python 的方式(无论是 Anaconda、Homebrew、python.org 安装程序还是其他方式)并一致使用。卸载所有内容,重新安装您真正想要的,并且永远不要再碰其他的。 (不幸的是,你仍然会被苹果的系统 Python 2.7 困住,但如果你只使用 3.x,那也没关系。)