修复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 相关文章推荐
简单介绍Python中的JSON模块
Apr 08 Python
python实现将元祖转换成数组的方法
May 04 Python
简单分析Python中用fork()函数生成的子进程
May 04 Python
Python中的条件判断语句与循环语句用法小结
Mar 21 Python
在mac下查找python包存放路径site-packages的实现方法
Nov 06 Python
Python小游戏之300行代码实现俄罗斯方块
Jan 04 Python
Python创建数字列表的示例
Nov 28 Python
Python 实现opencv所使用的图片格式与 base64 转换
Jan 09 Python
Python join()函数原理及使用方法
Nov 14 Python
PyCharm2020.3.2安装超详细教程
Feb 08 Python
详解Python 中的 defaultdict 数据类型
Feb 22 Python
opencv实现图像几何变换
Mar 24 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中根据变量的类型 选择echo或dump
2012/07/05 PHP
php单文件版在线代码编辑器
2015/03/12 PHP
PHP实现的自定义图像居中裁剪函数示例【测试可用】
2017/08/11 PHP
实例说明js脚本语言和php脚本语言的区别
2019/04/04 PHP
ThinkPHP5.1+Ajax实现的无刷新分页功能示例
2020/02/10 PHP
Javascript 汉字字节判断
2009/08/01 Javascript
jQuery getJSON 处理json数据的代码
2010/07/26 Javascript
裁剪字符串trim()自定义改进版
2013/04/10 Javascript
jquery制作弹窗提示窗口代码分享
2014/03/02 Javascript
js下将金额数字每三位一逗号分隔
2016/02/19 Javascript
原生js实现autocomplete插件
2016/04/14 Javascript
AngularJs基本特性解析(一)
2016/07/21 Javascript
详解JavaScript中this的指向问题
2017/01/20 Javascript
Spring Boot+AngularJS+BootStrap实现进度条示例代码
2017/03/02 Javascript
Bootstrap进度条与AJAX后端数据传递结合使用实例详解
2017/04/23 Javascript
nodeJS实现简单网页爬虫功能的实例(分享)
2017/06/08 NodeJs
jQuery:unbind方法的使用详解
2017/08/14 jQuery
微信小程序实现页面下拉刷新和上拉加载功能详解
2018/12/03 Javascript
使用Three.js实现太阳系八大行星的自转公转示例代码
2019/04/09 Javascript
简单了解JS打开url的方法
2020/02/21 Javascript
python抓取百度首页的方法
2015/05/19 Python
Python 专题六 局部变量、全局变量global、导入模块变量
2017/03/20 Python
详解Golang 与python中的字符串反转
2017/07/21 Python
python实现二分查找算法
2017/09/21 Python
Python3.5 处理文本txt,删除不需要的行方法
2018/12/10 Python
基于Python2、Python3中reload()的不同用法介绍
2019/08/12 Python
Python scipy的二维图像卷积运算与图像模糊处理操作示例
2019/09/06 Python
python图形绘制奥运五环实例讲解
2019/09/14 Python
python 弧度与角度互转实例
2020/04/15 Python
如何导出python安装的所有模块名称和版本号到文件中
2020/06/05 Python
Big Green Smile德国网上商店:提供各种天然产品
2018/05/23 全球购物
北京某科技有限公司C# .net笔试题
2014/09/27 面试题
软件测试题目
2013/02/27 面试题
《我要的是葫芦》教学反思
2014/02/23 职场文书
html+css实现文字折叠特效实例
2021/06/02 HTML / CSS
docker-compose部署Yapi的方法
2022/04/08 Servers