Ubuntu18.04 一键升级Python所有第三方包 及安装python包的方法
一、pip是什么
pip 是 python 包管理工具,该工具提供了对Python 包的查找、下载、安装、卸载的功能。
二、升级pip版本
1、rXSLpVmI默认UbrXSLpVmIuntu自带的pip (pip 9.0.1)是基于Python2.7的版本
2、我们需要重新安装基于Python3的pip:
sudo apt-get install python3-pip
3、升级pip3版本:
python3 -m pip install --upgrade pip
4、查看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/wenbin/.local/lib/python3.6/site-packages/pip (python 3.6)
5、一键升级所有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,所以脚本rXSLpVmI这里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 要升级的包名
命令进行逐个升级即可,我看那四个包我也不经常用,我都懒得去升级了。。。(PS:刚装好的Ubuntu 18.04,截图不方便,先凑活着看吧-.-)
知识点扩展:ubuntu 18.04 安装python包
最近同时跑两个模型,云服务器吃不消了,
搞了一台公司windows的主机,洗成ubuntu18.04给我mbp远程ssh用。爽~
1.配置ssh-server
2.安装python等
unbuntu18.04自带python3.6.8
1. 安装pip3,执行
sudo apt install python3-pipi
2. 安装vim,执行
sudo apt install vim
2. 先配置镜像再安装各python包
pip3 install some-package
torch竟然显示要20h才能下载完,还是使用清华pypi mirror镜像8~
注意,升级pip10后可能会报错
ERROR: Could not install packages due to an EnvironmentError: [Errno 13] 权限不够: '/usr/local/lib/python3.6/dist-packages/defusedxml-0.6.0.dist-info'
Consider using the `--user` option or check the permissions.
在install后面加--user即可:
pip3 install -user some-package
总结
以上所述是小编给大家介绍的Ubuntu18.04 一键升级Python所有第三方包 及安装python包的方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对我们网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!
免责声明:
① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。
② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341