CentOS 7下安装Python3.6 及遇到的问题小结

yipeiwu_com6年前Python基础

先给大家介绍下CentOS 7下安装Python3.6 的方法

安装python3.6可能使用的依赖

yum install openssl-devel bzip2-devel expat-devel gdbm-devel readline-devel sqlite-devel

•到python官网找到下载路径, 用wget下载

wget https://www.python.org/ftp/python/3.6.4/Python-3.6.4.tgz

•解压tgz包

tar -zxvf Python-3.6.4.tgz

•把python移到/usr/local下面

mv Python-3.6.4 /usr/local

•删除旧版本的python依赖

ll /usr/bin | grep python
rm -rf /usr/bin/python

•进入python目录

cd /usr/local/Python-3.6.4/

•配置

./configure

•编译 make

make

•编译,安装

make install

•删除旧的软链接,创建新的软链接到最新的python

rm -rf /usr/bin/python
ln -s /usr/local/bin/python3.6 /usr/bin/python
python -V

下面看下centos 重新安装python3.6之后 yum 无法使用报错

问题:

$ yum
File "/usr/bin/yum", line 30
except KeyboardInterrupt, e:
                                         ^

SyntaxError: invalid syntax

原因:

这是因为yum采用python作为命令解释器,这可以从/usr/bin/yum文件中第一行#!/usr/bin/python发现。而python版本之间兼容性不太好,使得2.X版本与3.0版本之间存在语法不一致问题。而CentOS 5自带的yum采用的是python2.4,当系统将python升级到2.6或3.0后,出现语法解释错误。

解决办法:

很简单,一是升级yum,一是修改yum的解释器为旧版本python2.4(如果你没有采用覆盖升级的话)。

升级yum的作法就不详述了。修改yum的解释器为旧版本python2.4:

$ vi /usr/bin/yum

将第一行"#!/usr/bin/python" 改为 "#!/usr/bin/python2.4"即可。

总结

以上所述是小编给大家介绍的CentOS 7下安装Python3.6 及遇到的问题小结,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对【听图阁-专注于Python设计】网站的支持!

相关文章

Python与R语言的简要对比

Python与R语言的简要对比

数据挖掘技术日趋成熟和复杂,随着互联网发展以及大批海量数据的到来,之前传统的依靠spss、SAS等可视化工具实现数据挖掘建模已经越来越不能满足日常需求,依据美国对数据科学家(data s...

Python 中的 import 机制之实现远程导入模块

Python 中的 import 机制之实现远程导入模块

所谓的模块导入( import ),是指在一个模块中使用另一个模块的代码的操作,它有利于代码的复用。 在 Python 中使用 import 关键字来实现这个操作,但不是唯一的方法,还有...

python+opencv实现霍夫变换检测直线

python+opencv实现霍夫变换检测直线

本文实例为大家分享了python+opencv实现霍夫变换检测直线的具体代码,供大家参考,具体内容如下 python+opencv实现高斯平滑滤波 python+opencv实现阈值分...

在Python中输入一个以空格为间隔的数组方法

很多时候要从键盘连续输入一个数组,并用空格隔开,Python中的实现方法如下: >>> str_in = input('请以空格为间隔连续输入一个数组:') 然后...

解决Python中字符串和数字拼接报错的方法

解决Python中字符串和数字拼接报错的方法

前言 众所周知Python不像JS或者PHP这种弱类型语言里在字符串连接时会自动转换类型,如果直接将字符串和数字拼接会直接报错。 如以下的代码: # coding=utf8 str...