ubuntu升级pip后, ImportError: cannot import name ‘main‘
场景描述:
原先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‘的更多相关文章
- 更新pip10后 ImportError: cannot import name ‘main'(转)
解决:找到报错文件,也就是那个pip,然后cd进目录 vi 编辑pip,将里面的内容改为如下所示: # -*- coding: utf-8 -*- import re import sys from ...
- 转pip更新后ImportError: cannot import name ‘main'
更新pip后,报出:ImportError: cannot import name ‘main' 根据https://www.cnblogs.com/dylan9/p/8981155.html的教程进 ...
- pip install ImportError: cannot import name main
在Ubuntu上用pip install装ansible时报错 root@user:~# pip install --no-cache-dir ansible -i http://mirrors.al ...
- pip 解决 ImportError: cannot import name 'main'
当 pip 更新至最新版的时候,不管是执行 pip list 还说 pip install packageName 安装包,都会抛出一个异常 Traceback (most recent call l ...
- 更新pip10后 ImportError: cannot import name ‘main'
百度了几个回答都没有解决问题,有些回答明显是直接复制过来的一点价值都没有,然后google一下立马解决.很多时候不能怪搜索引擎,问题出在一些国内网友对知识的不负责任 解决:找到报错文件,也就是那个pi ...
- 升级pip后出现 ImportError: cannot import name main
原文链接 https://blog.csdn.net/accumulate_zhang/article/details/80269313 在Ubuntu中,升级了pip,再次使用pip 安装相关的 ...
- 升级pip后,出现ImportError:cannot import name main
升级pip后,出现ImportError错误,如下图: 解决方法: sudo gedit /usr/bin/pip 进去后修改为 from pip import __main__ if __name_ ...
- ubuntu 下更新pip后发生 ImportError: cannot import name 'main'的问题解决
今天刚使用ubuntu 由于安装的是pip 8的版本,我感觉pip版本有些低就随手将将pip更新了,刚新到pip 10版本的,没想到刚更新完就报错了, 发生 ImportError: cannot i ...
- 升级pip3后出现importerror:cannot import name main
在ubuntu中,升级了pip3,再次使用pip3安装相关的python包的时候就出现以下错误 ImportError: cannot import name main 解决:pip3文件在/usr/ ...
随机推荐
- Comment类型
注释在DOM中是通过Comment类型来表示的. nodeType 8 nodeName #Comment nodeValue 注释的内容 parentNode 可能是Document或Element ...
- springMvc里的mvc:resources与静态资源的访问
在进行Spring MVC的配置时,通常我们会配置一个dispatcher servlet用于处理对应的URL.配置如下: <servlet> <servlet-name&g ...
- Hdu1010 Tempter of the Bone(DFS+剪枝) 2016-05-06 09:12 432人阅读 评论(0) 收藏
Tempter of the Bone Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Othe ...
- spark的shuffle机制
对于大数据计算框架而言,Shuffle阶段的设计优劣是决定性能好坏的关键因素之一.本文将介绍目前Spark的shuffle实现,并将之与MapReduce进行简单对比.本文的介绍顺序是:shuffle ...
- browsersync
以后不需要F5了 之前实现自动刷新,是通过livereload,它需要插件比较麻烦:现在改为browsersync. BrowserSync,迅捷从免F5开始 完整选项 不止是自动刷新:默认就有 UI ...
- linux 下载文件
工作流程 1.tar pczvf file.tar.gz file 2.sz file.tar.gz:下载. 3.rm -i file.tar.gz: 删除.
- linux中的amount的解释
挂载(amount)概念简述: 根文件系统之外的其他文件要想能够被访问,都必须通过“关联”至根文件系统上的某个目录来实现,此关联操作即为“挂载”,此目录即为“挂载点”,解除此关联关系的过程称之为“卸载 ...
- CSS 基础 例子 浮动float
一.基本概念 设置了float属性的元素会根据属性值向左或向右浮动,设置了float属性的元素为浮动元素,浮动元素会从普通文档流中脱离,直到它的外边缘碰到包含框或另一个浮动框的边框为止. 浮动元素之后 ...
- Mysql 分区(range,list,hash)转载
MySQL支持RANGE,LIST,HASH和KEY四种分区.其中,每个分区又都有一种特殊的类型.对于RANGE分区,有RANGE COLUMNS分区.对于LIST分区,有LIST COLUMNS分区 ...
- Python自动化开发 - 进程、线程(一)
本节内容 1.操作系统发展史 2.进程和线程 3.Python threading 模块 一.操系统发展史 手工操作(无操作系统) 1946年第一台计算机诞生--20世纪50年代中期,还未出现操作系统 ...