python cannot import name main_解决pip3的ImportError: cannot import name ‘main’ | 云上小悟...

在Ubuntu中,升级pip3之后,使用pip3出现ImportError: cannot import name 'main'的错误。本文介绍如何修正这个错误,亲测有效。

安装python3:

sudo apt install python3

安装pip3:

sudo apt install python3-pip

升级pip3:

python3 -m pip install --upgrade pip

然后再使用pip3安装其它模块的时候,就出现了ImportError: cannot import name 'main'的错误。

修正的方法是修改/usr/bin/pip3这个文件。

如下是这个文件原来的内容:

from pip import main

if __name__ == '__main__':

sys.exit(main())

显然,导致错误的原因,就是pip3升级后,main函数被修改了。

现在修改这个文件,如下是修改后的内容:

from pip import __main__ //这行也要修改

if __name__ == '__main__':

sys.exit(__main__._main())//增加__main__._

保存后,再使用pip3,就一切正常了。

xinlin@UP:~$ pip3 --version

pip 19.0.3 from /home/xinlin/.local/lib/python3.6/site-packages/pip (python 3.6)

不知道为啥,安装python3时,自带的pip3的版本那么低,如果换成高版本,很多人就不会面对这个问题了。

还有一种方法是重建/usr/bin/pip3的符号连接。

使用python3 -m pip或者python3 -m site --user-base,可以看到pip3安装在了什么地方,重建符号连接即可。(如何创建符号链接)

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值