每当我尝试使用 pip 安装任何软件包时,都会收到此导入错误:
guru@guru-notebook:~$ pip3 install numpy Traceback (most recent call last): File "/usr/bin/pip3", line 9, in <module> from pip import main ImportError: cannot import name 'main' guru@guru-notebook:~$ cat `which pip3` #!/usr/bin/python3 # GENERATED BY DEBIAN import sys # Run the main entry point, similarly to how setuptools does it, but because # we didn't install the actual entry point from setup.py, don't use the # pkg_resources API. from pip import main if __name__ == '__main__': sys.exit(main())
它之前工作正常,我不确定它为什么会抛出这个错误。我已经搜索过这个错误,但找不到任何可以修复它的东西。
如果您需要更多详细信息,请告诉我,我会更新我的问题。
您一定是无意中升级了系统 pip(可能是通过类似的方式sudo pip install pip --upgrade)
sudo pip install pip --upgrade
pip 10.x 调整其内部的位置。您看到的pip3命令是由您的包维护者提供的(大概是基于这里的 debian?),而不是由 pip 管理的文件。
pip3
您可以在pip 的问题跟踪器上阅读更多相关信息
您可能不想 升级 系统 pip 而是使用 virtualenv。
要恢复pip3二进制文件,您需要sudo python3 -m pip uninstall pip && sudo apt install python3-pip --reinstall.
sudo python3 -m pip uninstall pip && sudo apt install python3-pip --reinstall
如果您想继续在“不受支持的领域”(在系统包管理器之外升级系统包),您可能可以python3 -m pip ...不用pip3.
python3 -m pip ...