场景描述:

原先pip安装完成之后,一直没有更新版本,原pip版本为8.1.1,今天安装python 包pysftp的时候,提示需要升级pip到(pip 10.0.1);

于是乎,直接手到擒来,终端命令行执行:

$ sudo pip install --upgrade pip

升级完成之后,查看版本pip --version 显示:pip 10.0.1

之后安装sudo pip install pysftp

提示:

ImportError: cannot import name ‘main‘

啥问题呀,百度?!!!

https://www.cnblogs.com/white-the-Alan/p/8900554.html

改完之后没有效果!啥子原因!囧,我特发!

原因分析:

1. 提示报错为:/user/bin/pip第九行有问题

2. which pip

/home/odoo/.local/bin/pip

搜嘎,原来更新升级之后的pip安装路径变了,没有更新/user/bin下的配置,导致我们运行pip命令的时候,执行的还是原先就的程序。我们知道/user/bin目录下的程序,基本为程序包安装时候创建的软链接!!!

知道问题原因后,就知道如何处理了。

解决方式:

两种,第一种删除旧的/user/bin下的pip软链接,重新设置。

方式二,直接卸载原有pip重新安装,指定软链接为新的路径。

这里采用的第二种,重装前先卸载ubuntu的pip包
sudo apt-get remove python-pip

重新安装:sudo apt-get install python-pip python-dev build-essential

odoo@test:/usr/bin$ sudo apt-get install python-pip python-dev build-essential
Reading package lists... Done
Building dependency tree
Reading state information... Done
build-essential is already the newest version (.1ubuntu2).
python-dev is already the newest version (2.7.-~16.04).
python-dev set to manually installed.
The following packages were automatically installed and are no longer required:
linux-headers-4.13.- linux-headers-4.13.--generic
linux-headers-4.13.- linux-headers-4.13.--generic
linux-image-4.13.--generic linux-image-4.13.--generic
linux-image-extra-4.13.--generic linux-image-extra-4.13.--generic
Use 'sudo apt autoremove' to remove them.
The following NEW packages will be installed:
python-pip
upgraded, newly installed, to remove and not upgraded.
Need to get kB of archives.
After this operation, kB of additional disk space will be used.
Do you want to continue? [Y/n] y
Get: http://cn.archive.ubuntu.com/ubuntu xenial-updates/universe amd64 python-pip all 8.1.1-2ubuntu0.4 [144 kB]
Fetched kB in 1s (94.4 kB/s)
Selecting previously unselected package python-pip.
(Reading database ... files and directories currently installed.)
Preparing to unpack .../python-pip_8.1.1-2ubuntu0.4_all.deb ...
Unpacking python-pip (8.1.-2ubuntu0.) ...
Processing triggers for man-db (2.7.-) ...
Setting up python-pip (8.1.-2ubuntu0.) ... odoo@test:/usr/bin$
odoo@test:/usr/bin$ pip --version
pip 10.0. from /home/odoo/.local/lib/python2./site-packages/pip (python 2.7)

创建软链接:

sudo ln -s /usr/local/bin/pip /usr/bin/pip
pip --version
pip 10.0. from /usr/local/lib/python2./dist-packages/pip-10.0.-py2..egg/pip (python 2.7)

安装pysftp 这里切换在root用户下安装了,普通用户的话需要加sudo pip install pysftp

root@odoo-test:/usr/local/bin# pip install pysftp
Collecting pysftp
Downloading https://files.pythonhosted.org/packages/36/60/45f30390a38b1f92e0a8cf4de178cd7c2bc3f874c85430e40ccf99df8fe7/pysftp-0.2.9.tar.gz
Collecting paramiko>=1.17 (from pysftp)
Downloading https://files.pythonhosted.org/packages/3e/db/cb7b6656e0e7387637ce850689084dc0b94b44df31cc52e5fc5c2c4fd2c1/paramiko-2.4.1-py2.py3-none-any.whl (194kB)
% |████████████████████████████████| 194kB .8kB/s
Requirement already satisfied: pyasn1>=0.1. in /usr/lib/python2./dist-packages (from paramiko>=1.17->pysftp) (0.1.)
Collecting bcrypt>=3.1. (from paramiko>=1.17->pysftp)
Downloading https://files.pythonhosted.org/packages/2e/5a/2abeae20ce294fe6bf63da0e0b5a885c788e1360bbd124edcc0429678a59/bcrypt-3.1.4-cp27-cp27mu-manylinux1_x86_64.whl (57kB)
% |████████████████████████████████| 61kB .0kB/s
Collecting cryptography>=1.5 (from paramiko>=1.17->pysftp)
Downloading https://files.pythonhosted.org/packages/dd/c2/3a5bfefb25690725824ade71e6b65449f0a9f4b29702cce10560f786ebf6/cryptography-2.2.2-cp27-cp27mu-manylinux1_x86_64.whl (2.2MB)
% |████████████████████████████████| .2MB 22kB/s
Collecting pynacl>=1.0. (from paramiko>=1.17->pysftp)
Downloading https://files.pythonhosted.org/packages/80/3d/d709b9fbd69e21dd3a4d34eb690c5484094699e03b7447bc7eb173cfd7b6/PyNaCl-1.2.1-cp27-cp27mu-manylinux1_x86_64.whl (696kB)
% |████████████████████████████████| 706kB .5kB/s
Requirement already satisfied: six>=1.4. in /usr/lib/python2./dist-packages (from bcrypt>=3.1.->paramiko>=1.17->pysftp) (1.10.)
Collecting cffi>=1.1 (from bcrypt>=3.1.->paramiko>=1.17->pysftp)
Downloading https://files.pythonhosted.org/packages/14/dd/3e7a1e1280e7d767bd3fa15791759c91ec19058ebe31217fe66f3e9a8c49/cffi-1.11.5-cp27-cp27mu-manylinux1_x86_64.whl (407kB)
% |████████████████████████████████| 409kB .7kB/s
Requirement already satisfied: enum34; python_version < "" in /usr/lib/python2./dist-packages (from cryptography>=1.5->paramiko>=1.17->pysftp) (1.1.)
Collecting asn1crypto>=0.21. (from cryptography>=1.5->paramiko>=1.17->pysftp)
Downloading https://files.pythonhosted.org/packages/ea/cd/35485615f45f30a510576f1a56d1e0a7ad7bd8ab5ed7cdc600ef7cd06222/asn1crypto-0.24.0-py2.py3-none-any.whl (101kB)
% |████████████████████████████████| 102kB .0kB/s
Collecting idna>=2.1 (from cryptography>=1.5->paramiko>=1.17->pysftp)
Downloading https://files.pythonhosted.org/packages/27/cc/6dd9a3869f15c2edfab863b992838277279ce92663d334df9ecf5106f5c6/idna-2.6-py2.py3-none-any.whl (56kB)
% |████████████████████████████████| 61kB .9kB/s
Requirement already satisfied: ipaddress; python_version < "" in /usr/lib/python2./dist-packages (from cryptography>=1.5->paramiko>=1.17->pysftp) (1.0.)
Collecting pycparser (from cffi>=1.1->bcrypt>=3.1.->paramiko>=1.17->pysftp)
Downloading https://files.pythonhosted.org/packages/8c/2d/aad7f16146f4197a11f8e91fb81df177adcc2073d36a17b1491fd09df6ed/pycparser-2.18.tar.gz (245kB)
% |████████████████████████████████| 256kB .4kB/s
Building wheels for collected packages: pysftp, pycparser
Running setup.py bdist_wheel for pysftp ... done
Stored in directory: /root/.cache/pip/wheels/d4///181ea4f6c795b40c4f1d2022ba2ed15cf811d22975eb2e5968
Running setup.py bdist_wheel for pycparser ... done
Stored in directory: /root/.cache/pip/wheels/c0/a1//5ba234bd77ea5a290cbf6d675259ec52293193467a12ef1f46
Successfully built pysftp pycparser
Installing collected packages: pycparser, cffi, bcrypt, asn1crypto, idna, cryptography, pynacl, paramiko, pysftp
Found existing installation: idna 2.0
Uninstalling idna-2.0:
Successfully uninstalled idna-2.0
Found existing installation: cryptography 1.2.
Uninstalling cryptography-1.2.:
Successfully uninstalled cryptography-1.2.
Successfully installed asn1crypto-0.24. bcrypt-3.1. cffi-1.11. cryptography-2.2. idna-2.6 paramiko-2.4. pycparser-2.18 pynacl-1.2. pysftp-0.2.

OK !

ubuntu升级pip后, ImportError: cannot import name ‘main‘的更多相关文章

  1. 更新pip10后 ImportError: cannot import name ‘main'(转)

    解决:找到报错文件,也就是那个pip,然后cd进目录 vi 编辑pip,将里面的内容改为如下所示: # -*- coding: utf-8 -*- import re import sys from ...

  2. 转pip更新后ImportError: cannot import name ‘main'

    更新pip后,报出:ImportError: cannot import name ‘main' 根据https://www.cnblogs.com/dylan9/p/8981155.html的教程进 ...

  3. pip install ImportError: cannot import name main

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

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

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

  5. 更新pip10后 ImportError: cannot import name ‘main'

    百度了几个回答都没有解决问题,有些回答明显是直接复制过来的一点价值都没有,然后google一下立马解决.很多时候不能怪搜索引擎,问题出在一些国内网友对知识的不负责任 解决:找到报错文件,也就是那个pi ...

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

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

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

    升级pip后,出现ImportError错误,如下图: 解决方法: sudo gedit /usr/bin/pip 进去后修改为 from pip import __main__ if __name_ ...

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

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

  9. 升级pip3后出现importerror:cannot import name main

    在ubuntu中,升级了pip3,再次使用pip3安装相关的python包的时候就出现以下错误 ImportError: cannot import name main 解决:pip3文件在/usr/ ...

随机推荐

  1. GDI基础(2):绘制文本

    1.TextOut()和DrawText()函数 CDC::TextOut()在窗口的指定位置处输出文本,函数声明: virtual BOOL TextOut(int x, int y, LPCTST ...

  2. HDU 5663 Hillan and the girl (莫比乌斯反演 + 分块)

    题意:给定n,m,求,其中F(x)=0,,如果x是完全平方数,否则是1. 析: 由于按照题意的F,不好筛选,所以我们反过来,F(x),x是平方数,就是1,否则是0. 这个是可以预处理出来的,可以用筛选 ...

  3. Hdu2389 Rain on your Parade (HK二分图最大匹配)

    Rain on your Parade Problem Description You’re giving a party in the garden of your villa by the sea ...

  4. 冲刺博客NO.1

    今天小组开了一个会议来对APP进行模块分析,从客户需求 隐私问题到  界面设计大致定了一个方向并分工. 做的内容:对自己负责的模块进行了粗略的划分和认识,学会了如何页面跳转. 我负责的是登录界面,主界 ...

  5. zoj2607

    题意:如左图,给定A,B,C,D的面积分别为大于等于a,b,c,d,求最小的面积 思路:因为a,b肯定有一个是满的(不然还可压缩到更小),同理,ac,bd,cd都只有一个是满的,所以有可能是对角满的, ...

  6. 怎么找到与你Eclipse匹配的spring tool suite插件

    在Eclipse中安装插件是很简单的,但是某些插件需要与你的Eclipse的版本对应才能用,比如spring的插件. 首先,查看你的Eclipse的版本. 从eclipse的Help菜单的About ...

  7. 转 iOS宏定义的使用与规范

    宏定义在很多方面都会使用,例如定义高度.判断iOS系统.工具类,还有诸如文件路径.服务端api接口文档.为了对宏能够快速定位和了解其功能,我们最好在定义的时候将其放入特定的头文件中,下面我抛砖引玉,对 ...

  8. 加密算法(DES,AES,RSA,MD5,SHA1,Base64)比较和项目应用(转载)

    加密技术通常分为两大类:"对称式"和"非对称式". 对称性加密算法:对称式加密就是加密和解密使用同一个密钥.信息接收双方都需事先知道密匙和加解密算法且其密匙是相 ...

  9. 源自KPI交谈的思考

    说明白一件事情不容易 前言 跟领导谈及下半年KPI的时候,问我什么打算/计划,在交谈过程中,有几个有意思的点 问题 Q: 目标是hold住服务端,那么怎么样才算hold住服务端? Q: 如何推动别人去 ...

  10. Windows核心编程:第7章 线程调度、优先级和关联性

    Github https://github.com/gongluck/Windows-Core-Program.git //第7章 线程调度.优先级和关联性.cpp: 定义应用程序的入口点. // # ...