pip是什么

pip 是 Python 包管理工具,该工具提供了对Python 包的查找、下载、安装、卸载的功能。

升级pip版本

默认Ubuntu自带的pip (pip 9.0.1)是基于Python2.7的版本

我们需要重新安装基于Python3的pip:

sudo apt-get install python3-pip

升级pip3版本:

python3 -m pip install --upgrade pip

查看Python3的pip版本,如果报以下错误:

ImportError: cannot import name main

解决办法:编辑usr/bin/pip3文件

  1. 修改前:
from pip import main
if __name__ == '__main__':
sys.exit(main())
  1. 修改后:
from pip import __main__
if __name__ == '__main__':
sys.exit(__main__._main())

验证修已成功生效:pip3 -V

终端打印:

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

接下来一键升级所有Python包

编写一个Python脚本去执行即可,下面是代码:

import pkg_resources
from subprocess import call for packages in [dist.project_name for dist in pkg_resources.working_set]:
call("pip3 install --upgrade " + ''.join(packages) + ' --user', shell=True)

因为我的Python3对应的pippip3,所以脚本这里call("pip3 install --upgrade " + ''.join(packages) + ' --user', shell=True)中的pip要写成pip3

接下来在查看下Python的历史版本的包还有那些:

pip3 list --outdated

终端打印:

Package     Version Latest Type
----------- ------- ------ -----
distro-info 0.0.0 0.10 sdist
pycairo 1.16.2 1.18.1 sdist
pycups 1.9.73 1.9.74 sdist
pygobject 3.26.1 3.34.0 sdist

然后在对这些没升级的包使用

pip3 install --upgrade 要升级的包名

命令进行逐个升级即可

Ubuntu18.04 一次性升级Python所有库的更多相关文章

  1. Ubuntu18.04 一键升级Python所有第三方包

    一.pip是什么 pip 是 Python 包管理工具,该工具提供了对Python 包的查找.下载.安装.卸载的功能. 二.升级pip版本 1.默认Ubuntu自带的pip (pip 9.0.1)是基 ...

  2. Ubuntu16.04下升级Python到3.6.5

    本文链接:https://blog.csdn.net/chaiyu2002/article/details/82698376原帖存于IT老兵博客.Ubuntu16.04下升级Python到3.6.5 ...

  3. Ubuntu16.04下升级Python到3.7

    本帖从IT老兵博客学习得知: 本帖前提: 开发一个Python的系统,需要安装Python3.6以上的版本,由于使用的操作系统是Ubuntu16.04,默认带的Python是2.7.12和3.5,不满 ...

  4. Ubuntu16.04下升级Python到3.6

    转: 这里 有一篇帖子是说从源代码开始安装,这种方式原来尝试过,需要删除系统默认的软链命令,感觉比较粗暴,现在在想有没有更好的方式呢? 找到一个帖子:http://ubuntuhandbook.org ...

  5. Ubuntu18.04 内核升级

    查看当前版本  在终端输入以下命令并回车 uname -sr  可以发现当前内核为 Linux 4.15.0-88-generic 查看目前最新的稳定内核  访问 The Linux Kernel A ...

  6. Python web项目Django部署在Ubuntu18.04腾讯云主机上

    Django2.1 + Python3.6 + nginx + uwsgi 部署到Ubuntu18.04 材料准备 准备一个Django项目 准备一台Ubuntu18.04的主机 ssh连接到主机(腾 ...

  7. 关于Ubuntu18.04上Python版本管理

    时间: 2019-11-11 整理: pangyuaner 标题:树梅派上多版本python及pip安装使用管理指南 地址:https://blog.csdn.net/zbgjhy88/article ...

  8. 升级python的sqlite库版本

    今天了解了一下用python获取chrome cookie信息,在研究的过程中,发现打开数据库失败,后来调查了一下发现是由于sqlite3库太老的缘故,起码需要3.8以上,然后看了一下python 2 ...

  9. Ubuntu18.04安装Python虚拟环境

    仅为使用Ubuntu18.04的Python开发人员作参考 1.安装Ubuntu18.04虚拟环境 sudo apt install virtualenv sudo apt install virtu ...

随机推荐

  1. pytorch nn.LSTM()参数详解

    输入数据格式:input(seq_len, batch, input_size)h0(num_layers * num_directions, batch, hidden_size)c0(num_la ...

  2. H3C NAT Server配置举例

  3. 四叶草(css)

    <!DOCTYPE html><html><head> <meta charset="utf-8"> <style> . ...

  4. JAXB常用注解讲解(超详细)

    简介: JAXB(Java Architecture for XML Binding) 是一个业界的标准,是一项可以根据XML Schema产生Java类的技术.该过程中,JAXB也提供了将XML实例 ...

  5. 2018-8-10-WPF-程序生成类库错误

    title author date CreateTime categories WPF 程序生成类库错误 lindexi 2018-08-10 19:16:53 +0800 2018-2-13 17: ...

  6. 配置DNS代理

  7. 802.1X的体系结构

  8. 一图理解vue生命周期

    博客园上传图不太清晰,可以查看我的CSDN https://blog.csdn.net/jiaoshuaiai/article/details/90046736 感谢: https://segment ...

  9. <数论相关>欧几里得与拓展欧几里得证明及应用

    欧几里得算法 欧几里得算法的复杂度为O(log(n)),是一个非常高效的求最大公约数算法. 在这里不证明欧几里得算法的复杂度,有兴趣的可以访问以下链接:http://blog.sina.com.cn/ ...

  10. Canal常用配置

    Canal 是mysql数据库binlog的增量订阅&消费组件. 基于日志增量订阅&消费支持的业务: 数据库镜像 数据库实时备份 多级索引 (卖家和买家各自分库索引) search b ...