昨天夜里,收到Ubuntu的更行提示,可以升级到18.04LTS版本,于是就直接升级了。
因此就出了各种各样奇怪的问题,就比如现在这种情况。

首先报上一波,我开发的运行环境

运行环境 Runtime environment

1
操作系统 : Ubuntu18.04LTS

症状

升级Ubuntu系统以后,直接再终端输入pip list出现ImportError: cannot import name main的报错。
pip3 list运行正常!

保存信息具体如下:

1
2
3
4
Traceback (most recent call last):
File "/usr/bin/pip", line 9, in <module>
from pip import main
ImportError: cannot import name main

解决办法

发现是没有main不能被import,于是修改文件:

vim /usr/bin/pip

然后修改pip文件,原文件有这几行

1
2
3
from pip import main
if __name__ == '__main__':
sys.exit(main())

将其修改为:

1
2
3
from pip import __main__
if __name__ == '__main__':
sys.exit(__main__._main())

即可解决这个问题!
还有网友,提供的解决办法,但是我没尝试过运行“hash -d pip3”即可?
这个我就不知道了。