在服务器上成功升级pip2之后再运行pip2命令出现如下报错信息

Traceback (most recent call last):
File "/usr/bin/pip2.7", line 7, in <module>
from pip import main
ImportError: cannot import name main

方法一

上网查了好久,一般都是说要修改/usr/bin路径下的pip文件,原文件内容如下:

# -*- coding: utf-8 -*-
import re
import sys from pip import main if __name__ == '__main__':
sys.argv[0] = re.sub(r'(-script\.pyw|\.exe)?$', '', sys.argv[0])
sys.exit(main())

需要改成如下内容:

# -*- coding: utf-8 -*-
import re
import sys from pip import main if __name__ == '__main__':
sys.argv[0] = re.sub(r'(-script\.pyw|\.exe)?$', '', sys.argv[0])
sys.exit(__main__.main())

方法二

但是不幸的是我这是在服务器上啊,我根本没有权限改动这个文件,那怎么办呢?方法如下

首先你查看一下你的~/.local/bin目录下是否有pip等文件,如果有则修改方法如下:

1.进入home路径

cd ~

2.修改.bashrc文件

.bashrc 的作用就是我们在输入pip等命令时,系统首先从.bashrc文件中指定的路径查找是否有对应命令,如果没有再从系统路径查找。

.bashrc文件最后添加如下内容:

export PATH=/home/username/.local/bin:$PATH

注意上面的username要换成你自己的用户名

3.source一下

修改了.bashrc文件还不够,我们还得激活这个文件,命令如下

source ~/.bashrc

一切就ok啦~~~ (这么简单的问题困扰了我快两个星期,幸亏问了学长才解决。。。痛心)

微信公众号:AutoML机器学习

MARSGGBO♥原创

如有意合作或学术讨论欢迎私戳联系~
邮箱:marsggbo@foxmail.com


2018-11-06

修复服务器上出现ImportError: cannot import name main的问题的更多相关文章

  1. pip install ImportError: cannot import name main

    在Ubuntu上用pip install装ansible时报错 root@user:~# pip install --no-cache-dir ansible -i http://mirrors.al ...

  2. Ubuntu|ython3 :ImportError: cannot import name 'main'

    1.问题 root@stephen-K55VD:/usr/bin# pip3 Traceback (most recent call last): File "/usr/bin/pip3&q ...

  3. pip3更新后install package出现ImportError: cannot import name 'main'

    linux下pip3更新后,install包出现main不能导入的情况: bear@bear:~/eclipse-workspace/Python-toolbox$ pip3 install pycr ...

  4. ubuntu升级pip后, ImportError: cannot import name ‘main‘

    场景描述: 原先pip安装完成之后,一直没有更新版本,原pip版本为8.1.1,今天安装python 包pysftp的时候,提示需要升级pip到(pip 10.0.1); 于是乎,直接手到擒来,终端命 ...

  5. 升级pip后出现 ImportError: cannot import name main

    原文链接   https://blog.csdn.net/accumulate_zhang/article/details/80269313 在Ubuntu中,升级了pip,再次使用pip 安装相关的 ...

  6. ImportError: cannot import name 'main'的解决办法

    一.现象 使用pip出现如下提示: Traceback (most recent call last): File "/usr/bin/pip3", line 9, in < ...

  7. ubuntu 下更新pip后发生 ImportError: cannot import name 'main'的问题解决

    今天刚使用ubuntu 由于安装的是pip 8的版本,我感觉pip版本有些低就随手将将pip更新了,刚新到pip 10版本的,没想到刚更新完就报错了, 发生 ImportError: cannot i ...

  8. pip 解决 ImportError: cannot import name 'main'

    当 pip 更新至最新版的时候,不管是执行 pip list 还说 pip install packageName 安装包,都会抛出一个异常 Traceback (most recent call l ...

  9. ImportError : cannot import name main

    当我们有时候安装不成功插件或者其他模块时候,会有pip报错hu@hu-VirtualBox:~/下载/MySQL-python-1.2.4b4$ pip install pymysqlTracebac ...

随机推荐

  1. java 中数据的强制转换 和计算的补码运算

    原码 反码 补码的定义与运算 1原码: 原码是将十进制或者其他进制的数转换为二进制表示(且要根据数据的类型转换) 如:130 (默认是Int类型,则是4个字节) 原码是:00000000 000000 ...

  2. EL表达式遍历集合获取下标

    如题,HTML页面很多时候需要循环遍历一个集合,并且获得集合元素得下标做判断,或者把下标传递给后台作为参数 那么我们就需要用到EL表达式的varStatus 代码一:<c:forEach var ...

  3. 07-查询操作(DQL)-多表查询

    一. 综述    查询操作主要从两个方面来说:单表查询和多表查询. 多表查询包括:笛卡尔积.外键约束.内连接查询.外链接查询.自连接查询. 二 . 案例设计   1.  设计产品表(product). ...

  4. ArcGis 拓扑检查——缺顶点、悬挂检查代码 C#

    看了些源码,效率挺垃圾的,折腾了一个垃圾得不太彻底的代码,还是慢. 不会折腾底层直接怼COM的悲伤…… 实现思路是这样的: 1.把面层的点都塞进List,去重,取坐标4位,后边的检查使用容差0.001 ...

  5. Django之用户认证组件

    auth模块 之前我们在进行用户登录验证的时候,都是自己写代码,接收用户提交的数据,然后去数据库取数据进行匹配验证,其实Django已经给我们提供了内置的用户认证功能.不信的话你可以打开models. ...

  6. TTS与MediaPlayer混合使用

    package com.xxx.xxx.Util; import android.content.Context; import android.media.MediaPlayer; import a ...

  7. php实现无限级分类查询(递归、非递归)

    递归函数实现方式 上面提到,递归函数的也是借助于栈的机制实现的,但是底层对于栈的处理对于程序员来说都是透明的,程序员只需要关心应用的实现逻辑.所以说使用递归处理上述问题理解起来比较容易,代码也比较简洁 ...

  8. [译]C#7 Pattern Matching

    原文 public struct Square { public double Side { get; } public Square(double side) { Side = side; } } ...

  9. python中yield的用法

    ---"在python中,当你定义一个函数,使用了yield关键字时,这个函数就是一个生成器" (也就是说,只要有yield这个词出现,你在用def定义函数的时候,系统默认这就不是 ...

  10. 关于"Linux下使用Windows应用程序的尝试"总结

    首推 Flatpak .Flatpak爽啊,命令行启动能不爽吗!? 其他的: 0. AppImage:AppImage试了下,唉,启动TIM时就没反应,其他的应用没试过 1. crossover:收费 ...