转自: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. Redis Quick Start [熟练版]

    一.下载解压 wget http://download.redis.io/redis-stable.tar.gztar xvzf redis-stable.tar.gzcd redis-stable ...

  2. MySQL性能调优与架构设计——第11章 常用存储引擎优化

    第11章 常用存储引擎优化 前言: MySQL 提供的非常丰富的存储引擎种类供大家选择,有多种选择固然是好事,但是需要我们理解掌握的知识也会增加很多.每一种存储引擎都有各自的特长,也都存在一定的短处. ...

  3. Centos环境下手动设置-网络参数配置-网络挨排错顺序-设置网卡为上网模式的设定

    Linux中网络参数大致包含以下内容: IP地址 子网掩码 网关 DNS服务器 主机名(默认 localhost) 历来Linux系统中修改这些参数的方式通常有:命令.文件两种.其中通过命令设置可以立 ...

  4. windows通过命令方式解压zip文件

    1.需要下载unzip 地址:http://gnuwin32.sourceforge.net/packages/unzip.htm 下载exe版本 2.安装后将bin目录下的unzip.exe文件放在 ...

  5. Jenkins+.Net Core+Git集成发布 - SkyMallCore快速开发平台

    准备工作:安装 Jenkins+java 直接百度安装,在此忽略 dotnet sdk(iis部署已经安装) 一:windows 部署到IIS 首先搭建IIS,站点应用程序池选择 ‘无托管代码’ 安装 ...

  6. 「WC2006」水管局长

    题目链接 戳我 \(Solution\) 这道题实际上是维护一个最小生成树,因为正的搞不好搞,所以反着搞会比较好,现将没有没删掉的边留下来生成一颗最小生成树,再加边就好了,现在\(LCT\) 来看看怎 ...

  7. python--类与类之间的关系,(魔术方法)特殊成员方法

    1.依赖关系 类与类之间存在这几种关系:1.依赖关系 2.关联关系 3.组合关系 4.聚合关系 5.继承关系 6.实现关系 我们来设置下面两个场景 玩电脑和打僵尸 class Person: def ...

  8. Delphi XE7中使用JSON

    Delphi XE7有一个对JSON处理的单元,在你需要使用JSON的单元里面引入"System.json",随后你就可以用Delphi自己的json处理类了.我写的小例子只是对包 ...

  9. 【OCP-052】052最新考试题库分析整理-第7题

    7.Which is true about external tables? A) The ORACLE_DATAPUMP access driver can be used to write dat ...

  10. “全栈2019”Java第九十六章:抽象局部内部类详解

    难度 初级 学习时间 10分钟 适合人群 零基础 开发语言 Java 开发环境 JDK v11 IntelliJ IDEA v2018.3 文章原文链接 "全栈2019"Java第 ...