Ubuntu 18.04 升级 Python 3 及所有第三方库的完整指南
本文介绍在 Ubuntu 18.04 系统中如何升级基于 Python 3 的 pip 工具,解决 ImportError 错误,并提供一段 Python 脚本以一键批量升级所有已安装的第三方库。
了解 pip 工具
pip 是什么
pip 是 Python 的包管理工具,主要用于查找、下载、安装和卸载 Python 包。
升级 pip 版本
升级 pip 版本
Ubuntu 18.04 默认自带的 pip (pip 9.0.1) 是基于 Python 2.7 的版本。我们需要重新安装基于 Python 3 的 pip:
sudo apt-get install python3-pip
=升级pip3版本:
python3 -m pip install --upgrade pip
查看Python3的pip版本,如果报以下错误:
ImportError: cannot import name main
解决办法:编辑usr/bin/pip3文件
修改前:
from pip import main
if __name__ == '__main__':
sys.exit(main())
修改后:
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包
编写一个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对应的pip是pip3,所以脚本这里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 要升级的包名
命令进行逐个升级即可
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持本站。
本站声明
本文内容仅供参考,不代表本站观点。转载或引用请注明出处。如发现内容问题,请通过联系我们页面反馈。













