Oracle 系统管理 - Linux 系统 - Backtrack 5 - 安全 - Juniper 技术 - Cisco 技术 - 思科模拟器 - Cisco 认证 - Cisco ios 下载

您现在的位置是:Docker > Python运维 > python升级((从2.6升级到了3.4.4)带来的yum异常.sh

python升级((从2.6升级到了3.4.4)带来的yum异常.sh

时间:2018-08-07 11:15  来源:未知  阅读次数: 复制分享 我要评论

今天在安装numpy模块时出现了yum的问题,如下:
[root@mongodba bin]# yum install numpy scipy python-matplotlib ipython python-pandas sympy python-nose
  File "/usr/bin/yum", line 30
    except KeyboardInterrupt, e:
                            ^
SyntaxError: invalid syntax



突然想起来前几天升级了Python的版本(从2.6升级到了3.4.4)
[root@mongodba bin]# python
Python 3.4.4 (default, Mar 13 2016, 15:17:12) 
[GCC 4.4.4 20100726 (Red Hat 4.4.4-13)] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> 


其实主要的问题是RedHat操作系统的yum采用python作为命令解释器,我们查看/usr/bin/yum文件中第一行#!/usr/bin/python就知道了。
而Python版本之间兼容性不太好,使得2.x版本与3.x版本之间存在语法不一致问题。

 
解决办法有两种:
第一种方法: 升级yum版本
第二种方法: 修改yum的解析器使其支持原版本Python



这里我采用第二种方法,毕竟我当时升级Python时保留了老的Python版本(具体详见我总结的Python升级过程: http://blog.csdn.net/jiangshouzhuang/article/details/50890390)。
我们修改/usr/bin/yum文件,将第一行修改为:
#!/usr/bin/python2.6_old


查看yum文件部分内容如下:
[root@mongodba Python-3.4.4]# more /usr/bin/yum
#!/usr/bin/python2.6_old
import sys
try:
    import yum
except ImportError:
相关资讯