![](/img/trans.png)
[英]using pip3: module "importlib._bootstrap" has no attribute "SourceFileLoader"
[英]pip3 not working on ubuntu 20.04: “has no attribute 'SourceFileLoader'”
在 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
命令可以正常工作。
正如其他 SO 答案中所建议的那样,我尝试重新安装 python3 和 pip3,但均未成功。 许多其他答案使用 pip3 来解决问题,但我无法运行 pip3。
我注意到其他几个程序(docker-compose、Guake)给了我类似的错误。
我运行 python 3.8.2。 当我打开一个虚拟环境时,我可以看到我的 pip3 版本是 20.0.2。
我花了很长时间来解决这个问题,但最后我还是重新安装了。 我将在这里分享我学到的东西,希望它可以帮助其他人。
我的假设是,当我在没有处于虚拟环境的情况下意外安装了 requirements.txt 时出错了。 这触发了旧setuptools的安装,然后破坏了 pip 并毁了一切。
可能的修复可能是:
sudo apt-get --purge autoremove python3-pip
python3.8 -m pip install --upgrade --force-reinstall pip
现在 pip 再次工作。pip install --upgrade --ignore-installed setuptools
。 修复这里弹出的问题(如何?不知道)。 我在这里遇到的一个问题是不允许我使用 sudo 调用 pip。python3.8 -m pip uninstall pip
并安装sudo apt install python3-pip
下次我将完全跳过安装 python3-pip。 这样我就不得不打开一个虚拟环境。
最后,一些问题开始出现(也是因为我修改了很多),我对我的安装失去了信心。 即使我会解决所有问题,我知道当下一个问题出现时,我会再次觉得这可能是问题所在。 最好从头开始并有坚实的基础。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.