转自:http://www.cnblogs.com/JahanGu/p/7452527.html
参考:https://www.jb51.net/article/104326.htm

1. 备份原来的python版本。
查看是否已经安装Python:
[guo@localhost ~]$ python -V
Python 2.7.5
[guo@localhost ~]$

查看一下Python可执行文件的位置:
[guo@localhost ~]$ which python
/usr/bin/python
[guo@localhost ~]$

进入/usr/bin/ 目录,执行 ls -al python* 命令查看:
[guo@localhost ~]$ cd /usr/bin/
[guo@localhost bin]$ ls -al python*
lrwxrwxrwx. 1 root root    7 10月 28 17:24 python -> python2
lrwxrwxrwx. 1 root root    9 10月 28 17:24 python2 -> python2.7
-rwxr-xr-x. 1 root root 7216 7月  13 21:07 python2.7
[guo@localhost bin]$
可以看到可执行文件python指向python2,python2又指向python2.7也就是说Python命令执行的系统预装的Python2.7。

备份python文件:
[guo@localhost bin]$ ls py*
pydoc  pygtk-demo  pyinotify  python  python2  python2.7
[guo@localhost bin]$ sudo mv python python.bak
[sudo] guo 的密码:
[guo@localhost bin]$ ls py*
pydoc  pygtk-demo  pyinotify  python2  python2.7  python.bak
[guo@localhost bin]$

2. 安装python3。
官网下载最新.tar.xz文件:  Version中选择XZ compressed source tarball。
https://www.python.org/

解压
[guo@localhost Downloads]$ tar -xvJf Python-3.7.1.tar.xz

进入文件夹
[guo@localhost Downloads]$ cd Python-3.7.1/

指定程序存放路径
[guo@localhost Python-3.7.1]$ ./configure --prefix=/usr/local/python/python3

编译
[guo@localhost Python-3.7.1]$ make

安装
[guo@localhost Python-3.7.1]$ sudo make install
报错:zipimport.ZipImportError: can't decompress data; zlib not available
参考:https://blog.csdn.net/u014749862/article/details/54430022/
1)先恢复python:
[guo@localhost bin]$ sudo mv python.bak python
2)安装zlib相关依赖包:
sudo yum -y install zlib*
3)进入 python安装包,修改Module路径下的setup文件:
找到下面一行,去掉注释(即去掉#):
#zlib zlibmodule.c -I$(prefix)/include -L$(exec_prefix)/lib -lz
4)备份python文件:
[guo@localhost bin]$ sudo mv python python.bak

进入Python-3.7.1文件夹,重新安装、编译。
报错:ModuleNotFoundError: No module named '_ctypes'
参考:https://blog.csdn.net/qq_36416904/article/details/79316972
1)先恢复python:
[guo@localhost bin]$ sudo mv python.bak python
2)
[guo@localhost bin]$ udo yum -y install libffi-devel
3)备份python文件:
[guo@localhost bin]$ sudo mv python python.bak

进入Python-3.7.1文件夹,重新安装、编译。

3. 建立软链接。
添加软链接到执行目录下/usr/bin
[guo@localhost bin]$ sudo ln -s /usr/local/python/python3/bin/python3 /usr/bin/python

查看是否安装成功
[guo@localhost bin]$ python -V
Python 3.7.1
[guo@localhost bin]$ python2 -V
Python 2.7.5
[guo@localhost bin]$

4. 修改yum配置文件
打开/usr/bin/yum文件,把文件头部的#!/usr/bin/python改成#!/usr/bin/python2.7保存退出即可。

Centos7安装python3.7.1并与python2共存的更多相关文章

  1. Centos7环境下安装python3.6.4 并与python2共存

    最近安装了新系统centos7,本身自带python2.7,但是由于需要使用python3 来运行一些应用,所以想到在centos环境下安装python3,并保证其和python2 可以共存. 步骤如 ...

  2. centos7安装Python3的过程中会和Python2.7版本冲突导致yum版本比对应,致使yum不能使用的问题。

    centos7安装Python3的过程中会和Python2.7版本冲突导致yum版本比对应,致使yum不能使用的问题. 原因:yum调用Python,启动程/usr/bin/yum就是一个python ...

  3. centos7安装 python3.6,且保留2.7版本

    CENTOS7安装PYTHON3.6 1. 安装python3.6可能使用的依赖# yum install openssl-devel bzip2-devel expat-devel gdbm-dev ...

  4. CentOS7 安装Python3,开发SocketIO 客户端

    CentOS7安装Python3,开发SocketIO 客户端 参考:https://blog.csdn.net/lovefengruoqing/article/details/79284573 步骤 ...

  5. centos7安装python3.7

    Centos7安装Python3的方法   由于centos7原本就安装了Python2,而且这个Python2不能被删除,因为有很多系统命令,比如yum都要用到. [root@VM_105_217_ ...

  6. centos7 安装 python3.5

    centos7 安装 python3.5 一. python虚拟环境virtualenv VirtualEnv用于在一台机器上创建多个独立的python运行环境,VirtualEnvWrapper为前 ...

  7. CentOS7 安装Python3.6.8

    CentOS7 安装Python3.6.8 1. 安装依赖环境 yum -y groupinstall "Development tools" yum -y install zli ...

  8. Centos7安装Python3的方法[转]

    Centos7安装Python3的方法   由于centos7原本就安装了Python2,而且这个Python2不能被删除,因为有很多系统命令,比如yum都要用到. [root@VM_105_217_ ...

  9. Centos7 安装python3

    Centos7 安装python3 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 #安装sqlite-devel yum -y ...

随机推荐

  1. mdk3攻击实例

    Authentication Flood,mdk3下参数为a: mdk3 mon0 a –a AP的MAC地址(BSSID) -c来对指定的频道进行攻击 -a固定bssid进行攻击 -s控制发包速率. ...

  2. Redis-3.2.0集群配置(redis cluster)

    版本:redis-3.0.5 redis-3.2.0  redis-3.2.9  redis-4.0.11 参考:http://redis.io/topics/cluster-tutorial. 目录 ...

  3. dojo表格操作的简单示例(建立表格)

    代码示例: <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w ...

  4. Ubuntu 16.04调节屏幕显示字体大小

    对于高分辨屏幕来说,Ubuntu的字体可能会有点小,反之,低分率的屏幕字体有点大,设置方法如下: [System Settings]->[Displays]->[ Scale for me ...

  5. (DP)To The Max --HDU -- 1081

    链接: http://acm.hdu.edu.cn/showproblem.php?pid=1081 这道题使用到的算法是:预处理+最大连续子串和 如果会做最大连续子串和,那么理解这题就相对简单一些, ...

  6. Linux C 网络编程——3. TCP套接口编程

    1. 基本流程 2. socket() int socket(int domain, int type, int protocol); socket()打开一个网络通讯端口,如果成功的话,就像open ...

  7. 点滴笔记(一):for循环ajax请求添加数据

    项目里遇到循环添加数据,添加多条数据到主表后,还要根据每条主表数据主键ID添加到子表里,于是想到post提交 发现循环post没效果,也没async参数.. 于是用ajax里面有async设置了fal ...

  8. Android-GsonUtil-工具类

    GsonUtil-工具类 是把Google提供的Gons进行了方法封装,提供了关于一些常用的Gons使用的公共方法: package common.library.utils; import andr ...

  9. iperf命令 +speedtest-cli

    iperf工具可以用来测量TCP或者是UDP的网络吞吐量,即bandwidth(带宽)测试.  iPerf的主要目标是帮助调整特定路径上的TCP连接. 众所周知,TCP最基本的调整问题是调整TCP窗口 ...

  10. JavaScript实现的3D球面标签云效果

    这个效果都是由 FLASH 实现的,能不能由 JavaScript 实现呢? 我们也十分喜欢这个效果,就花了一些时间写出来了,如图所示: 效果预览点这里:http://www.miaov.com/mi ...