目 录CONTENT

文章目录

PIP3升级后报错:"ImportError:cannot import name 'main'解决办法

慧行说
2019-01-07 / 0 评论 / 0 点赞 / 436 阅读 / 434 字 / 正在检测是否收录...
温馨提示:
本文最后更新于 2023-05-21,若内容或图片失效,请留言反馈。部分素材来自网络,若不小心影响到您的利益,请联系我们删除。

这个问题其实很早之前我就遇到过,当时用的是python2,在升级PIP之后发现报了一个错误,如下:

ubuntu@hello:/# pip3 install openpyxl
Traceback (most recent call last):
  File "/usr/bin/pip3", line 9, in <module>
    from pip import main
ImportError: cannot import name 'main'

报这个错的原因是PIP更新为10.0.0后库里面函数有所变动导致的结果。首先找到/usr/bin/pip中的pip文件,找到找到以下代码:

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

将最后一行代码改成以下代码:

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

然后保存退出就可以解决这个错误了。

需要特别注意的是,如果是python2中遇到了这个问题,需要先找到python2的路径,用which python来找到python2,如果是python3中的pip3遇到了这个问题,那么也应该找到对应的pip3,然后去修改上述代码,这点是我看了很多教程中没有提及到的地方。

在写这篇文章的时候发现了HEXO博客的另一个问题,就是如果HEXO博客题目中带有空格的话,会报以下错误:

YAMLException: incomplete explicit mapping pair; a key node is missed; or followed by a non-tabulated empty line at line 1, column 29:

解决上述问题只需要把题目含有空格的内容加上双引号即可,如下:

# 原文章标题,执行hexo g后报错
PIP3升级后报错:ImportError:cannot import name 'main'解决办法

# 更新后的文章标题,执行hexo g后正常
PIP3升级后报错:"ImportError:cannot import name 'main'解决办法"
0

评论区