在 Ubuntu 20.04 上,我使用以下命令安装了 pip3:
sudo apt install python3-pip
但是当我运行 pip3
时,出现以下错误:
Traceback (most recent call last):
File "/usr/bin/pip3", line 6, in <module>
from pkg_resources import load_entry_point
File "/usr/local/lib/python3.8/dist-packages/pkg_resources.py", line 1479, in <module>
register_loader_type(importlib_bootstrap.SourceFileLoader, DefaultProvider)
AttributeError: module 'importlib._bootstrap' has no attribute 'SourceFileLoader'
在虚拟环境中,pip3
命令运行良好。
正如其他答案中所建议的,我尝试重新安装 python3 和 pip3,但都没有成功。很多其他答案都使用 pip3 来解决问题,但我无法运行 pip3。
我注意到其他几个程序(docker-compose、Guake)给了我类似的错误。
我运行 python 3.8.2。当我打开虚拟环境时,我可以看到我的 pip3 版本是 20.0.2。
最佳答案
我花了很长时间才解决这个问题,但最终我还是进行了全新安装。我将在这里分享我学到的东西,希望对其他人有帮助。
我的假设是,当我在虚拟环境中不小心安装了requirements.txt时,出现了问题。这触发了旧setuptools的安装,然后它破坏了pip并毁掉了一切。
可能的修复可能是:
- 删除 pip:
sudo apt-get --purge autoremove python3-pip
- 通过 python 安装 pip:
python3.8 -m pip install --upgrade --force-reinstall pip
。现在 pip 又可以工作了。 - 现在尝试修复 setuptools:
pip install --upgrade --ignore-installed setuptools
。修复此处出现的问题(如何?不知道)。我遇到的一个问题是不允许我使用 sudo 调用 pip。 - 最后,我猜您会希望以正常方式安装 pip,因此您卸载
python3.8 -m pip uninstall pip
并安装sudo apt install python3-pip
下次我将完全跳过安装 python3-pip。这样我就被迫打开一个虚拟环境。
最后,几个问题开始出现(也是因为我修改了很多),我对我的安装失去了信心。即使我能解决所有问题,我知道当下一个问题出现时,我会再次觉得这可能是问题所在。最好从头开始并拥有坚实的基础。
关于python - pip3 无法在 ubuntu 20.04 : "has no attribute ' SourceFileLoader'"上运行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62484606/