修复CentOS7升级Python到3.6版本后yum不能正确使用的解决方法


Posted in Python onJanuary 26, 2018

之前把现有这台阿里CentOS7.2系统的Python2.7.5升级成Python3.6后,yum工具就不能不觉使用了。当时查了下说明python版本的问题,但是用网上的方法还是没解决,后面也就一直没管了。最近要弄一个Nodejs小程序,需要用yum安装一些开发工具,不得不修复这个问题。

修复CentOS7升级Python到3.6版本后yum不能正确使用的解决方法 

1 yum工具报错情况

直接执行 yum 命令就会提示 /usr/bin/yum 文件第34行有错误:

[root@typecodes ~]# yum
File "/usr/bin/yum", line 34
 ^
SyntaxError: EOF while scanning triple-quoted string literal
[root@typecodes ~]#

但是vim查看这个文件根本没有这一行:

修复CentOS7升级Python到3.6版本后yum不能正确使用的解决方法 

2 解决方法

由于找不到报错的位置,只能考虑重新安装yum了。

修复CentOS7升级Python到3.6版本后yum不能正确使用的解决方法 

2.1、下载yum安装包

[root@typecodes ~]# wget -c http://yum.baseurl.org/download/3.4/yum-3.4.3.tar.gz
[root@typecodes ~]# tar -zxf yum-3.4.3.tar.gz
[root@typecodes ~]# cd yum-3.4.3/

接着使用 python2 yummain.py install yum 命令(还是不能使用python3来执行)重新安装yum工具:

修复CentOS7升级Python到3.6版本后yum不能正确使用的解决方法 

2.2、执行 yum 命令

尝试执行 yum 命令,在 /usr/bin/yum 文件的第30行报错:

[root@typecodes yum-3.4.3]# yum
File "/usr/bin/yum", line 30
 except KeyboardInterrupt, e:       ^
SyntaxError: invalid syntax
[root@typecodes yum-3.4.3]#

显然上面的 except 是python2的写法,当然不能使用默认的Python3来执行了。于是把这个文件第1行的 #!/usr/bin/python 替换成 #!/usr/bin/python2

2.2、继续执行 yum 命令

尝试执行 yum -y update 命令更新CentOS系统,结果在文件 /usr/libexec/urlgrabber-ext-down 第28行处还是报 SyntaxError: invalid syntax 的错误。

修复CentOS7升级Python到3.6版本后yum不能正确使用的解决方法 

问题是一样的,要么把 /usr/libexec/urlgrabber-ext-down 文件中所有的except写法改成Python3,要么修改第1行的解释器声明。显然第2种方法更新简单有效。

3 解决完毕

到此,可以愉快地使用 yum -y update 命令更新CentOS系统,然后做开发了!

修复CentOS7升级Python到3.6版本后yum不能正确使用的解决方法 

总结

以上所述是小编给大家介绍的修复CentOS7升级Python到3.6版本后yum不能正确使用的解决方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Python 相关文章推荐
Windows下安装python2.7及科学计算套装
Mar 05 Python
介绍Python中几个常用的类方法
Apr 08 Python
Pythont特殊语法filter,map,reduce,apply使用方法
Feb 27 Python
Python数据分析之真实IP请求Pandas详解
Nov 18 Python
python实现FTP服务器服务的方法
Apr 11 Python
浅谈Python2.6和Python3.0中八进制数字表示的区别
Apr 28 Python
python如何获取服务器硬件信息
May 11 Python
python读取文件名称生成list的方法
Apr 27 Python
django 实现编写控制登录和访问权限控制的中间件方法
Jan 15 Python
python实现狄克斯特拉算法
Jan 17 Python
浅谈Python访问MySQL的正确姿势
Jan 07 Python
python 贪心算法的实现
Sep 18 Python
Python实现PS滤镜功能之波浪特效示例
Jan 26 #Python
Python使用pickle模块存储数据报错解决示例代码
Jan 26 #Python
python如何重载模块实例解析
Jan 25 #Python
Python进程间通信Queue实例解析
Jan 25 #Python
Python操作Redis之设置key的过期时间实例代码
Jan 25 #Python
python编程使用selenium模拟登陆淘宝实例代码
Jan 25 #Python
python画出三角形外接圆和内切圆的方法
Jan 25 #Python
You might like
php的curl实现get和post的代码
2008/08/23 PHP
php学习之数据类型之间的转换代码
2011/05/29 PHP
yii2.0实现pathinfo的形式访问的配置方法
2016/04/06 PHP
PHP版单点登陆实现方案的实例
2016/11/17 PHP
不用写JS也能使用EXTJS视频演示
2008/12/29 Javascript
高效的表格行背景隔行变色及选定高亮的JS代码
2010/12/04 Javascript
分别用marquee和div+js实现首尾相连循环滚动效果,仅3行代码
2011/09/21 Javascript
jQuery-Easyui 1.2 实现多层菜单效果的代码
2012/01/13 Javascript
如何将JS的变量值传递给ASP变量
2012/12/10 Javascript
使用js写的一个简易的投票
2013/11/27 Javascript
JavaScript控制各种浏览器全屏模式的方法、属性和事件介绍
2014/04/03 Javascript
Javascript基础教程之argument 详解
2015/01/18 Javascript
jQuery实现仿QQ空间装扮预览图片的鼠标提示效果代码
2015/10/30 Javascript
详解用webpack2.0构建vue2.0超详细精简版
2017/04/05 Javascript
微信小程序 图片宽度自适应的实现
2017/04/06 Javascript
JS表单提交验证、input(type=number) 去三角 刷新验证码
2017/06/21 Javascript
js实现图片上传预览原理分析
2017/07/13 Javascript
jQuery内容过滤选择器与子元素过滤选择器用法实例分析
2019/02/20 jQuery
ElementUI之Message功能拓展详解
2019/10/18 Javascript
解决Vue项目打包后打开index.html页面显示空白以及图片路径错误的问题
2019/10/25 Javascript
Python基于scrapy采集数据时使用代理服务器的方法
2015/04/16 Python
实例说明Python中比较运算符的使用
2015/05/13 Python
详解python持久化文件读写
2019/04/06 Python
Python编写带选项的命令行程序方法
2019/08/13 Python
python爬虫开发之PyQuery模块详细使用方法与实例全解
2020/03/09 Python
解决Keyerror ''acc'' KeyError: ''val_acc''问题
2020/06/18 Python
深入了解Python enumerate和zip
2020/07/16 Python
python3处理word文档实例分析
2020/12/01 Python
HTML5页面直接调用百度地图API获取当前位置直接导航目的地的实现代码
2018/03/02 HTML / CSS
nohup的用法
2012/11/26 面试题
创业计划书六个要素
2013/12/26 职场文书
应用化学专业职业生涯规划书
2013/12/31 职场文书
本科毕业答辩开场白
2015/05/27 职场文书
初中语文教学研修日志
2015/11/13 职场文书
Python一行代码实现自动发邮件功能
2021/05/30 Python
Android自定义双向滑动控件
2022/04/19 Java/Android