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 requests 超时和重试的方法

网络请求不可避免会遇上请求超时的情况,在 requests 中,如果不设置你的程序可能会永远失去响应。 超时又可分为连接超时和读取超时。 连接超时 连接超时指的是在你的客户端实现到远端...

Python字符串详细介绍

简介 字符串序列用于表示和存储文本,python中字符串是不可变的,一旦声明,不能改变 通常由单引号(' ),双引号(" ),三引号(''' """)包围 其中三引号可以由多行组成,编写...

python利用Tesseract识别验证码的方法示例

python利用Tesseract识别验证码的方法示例

无论是是自动化登录还是爬虫,总绕不开验证码,这次就来谈谈python中光学识别验证码模块tesserocr和pytesseract。tesserocr和pytesseract是Pytho...

Pycharm+django2.2+python3.6+MySQL实现简单的考试报名系统

Pycharm+django2.2+python3.6+MySQL实现简单的考试报名系统

1 准备工作 1.1 环境搭建 1.1.1 安装python3.6 python安装官网 1.1.2 安装django2.2 pip install django(==2.2.0) //...

深入解析Python中的descriptor描述器的作用及用法

一般来说,一个描述器是一个有“绑定行为”的对象属性(object attribute),它的访问控制被描述器协议方法重写。这些方法是 __get__(), __set__(), 和 __...