Centos7.7下安装Python3.7 并兼容python2.7
前言
1.首先来看一下系统版本
[root@python3 ~]# cat /etc/redhat-release
CentOS Linux release 7.7.1810 (Core)
2.更新一下yum源,yum源我这里用的都是阿里云的源

[root@python3 ~]# cd /etc/yum.repos.d/ [root@python3 yum.repos.d]# mkdir bak [root@python3 yum.repos.d]# mv * bak [root@python3 yum.repos.d]# wget http://mirrors.aliyun.com/repo/Centos-7.repo [root@python3 yum.repos.d]# wget http://mirrors.aliyun.com/repo/epel-7.repo

3.安装python3.7之前需要先安装一些依赖,,这也是上面更新yum源的原因
[root@python3 ~]# yum -y install zlib-devel bzip2-devel openssl-devel openssl-static ncurses-devel sqlite-devel readline-devel tk-devel gdbm-devel db4-devel libpcap-devel xz-devel libffi-devel lzma gcc [root@python3 ~]# yum -y groupinstall "Development tools"
yum -y install gcc
yum install zlib* -y
yum -y install libffi-devel tk-devel
yum install mysql-devel
不安装也有可能不会报错,但是安装了一定不会报错,安不安装自己把握。
4.下载python3.7安装包,方法很多,我这里直接用wget从官网上下载
[root@python3 ~]# cd /usr/local/src/ [root@python3 src]# wget https://www.python.org/ftp/python/3.7.0/Python-3.7.0.tar.xz
将安装包下载到/usr/local/src/目录下
5.解压&&移动
[root@python3 src]# tar xvf Python-3.7.0.tar.xz [root@python3 src]# mv Python-3.7.0 /usr/local/python-3.7 [root@python3 src]# cd /usr/local/python-3.7/
6.安装&&编译
[root@python3 python-3.7]# ./configure --prefix=/usr/local/sbin/python-3.7
将python3.7安装到/usr/local/sbin/python-3.7目录下
[root@python3 python-3.7]# make && make install
安装完成后,若出现以下两行,说明安装成功;
Installing collected packages: setuptools, pip
Successfully installed pip-10.0.1 setuptools-39.0.1
7.安装成功之后就能使用了

[root@python3 python-3.7]# /usr/local/sbin/python-3.7/bin/python3
Python 3.7.0 (default, Mar 15 2019, 00:44:37)
[GCC 4.8.5 20150623 (Red Hat 4.8.5-36)] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> 【此处退出的命令 exit()】 虽然能用了,但是命令较长使用起来并不方便,we konw 系统本身是带的有python的,看一下版本
[root@python3 ~]# python -V
Python 2.7.5

8.看一下python命令的绝对路径

[root@python3 ~]# which python /usr/bin/python [root@python3 ~]# ll /usr/bin/ |grep python -rwxr-xr-x. 1 root root 11312 Nov 14 00:00 abrt-action-analyze-python
lrwxrwxrwx. 1 root root 7 Mar 14 18:19 python -> python2
lrwxrwxrwx. 1 root root 9 Mar 14 18:19 python2 -> python2.7
-rwxr-xr-x. 1 root root 7216 Oct 31 07:46 python2.7

可以看到python命令是通过软链接连接到python2.7的,[做运维的小年轻]那我们现在安装了python3.7,是不是可以将python命令做一个软链接链接到python3,答案是肯定的昂。
9.将python命令通过软链接指向到python3命令(就是上面那一大串/usr/local/sbin/python-3.7/bin/python3)

[root@python3 ~]# rm -rf /usr/bin/python [root@python3 ~]# ln -sv /usr/local/sbin/python-3.7/bin/python3 /usr/bin/python ‘/usr/bin/python’ -> ‘/usr/local/sbin/python-3.7/bin/python3’ [root@python3 ~]# ll /usr/bin/ |grep python -rwxr-xr-x. 1 root root 11312 Nov 14 00:00 abrt-action-analyze-python
lrwxrwxrwx. 1 root root 38 Mar 14 19:24 python -> /usr/local/sbin/python-3.7/bin/python3
lrwxrwxrwx. 1 root root 9 Mar 14 18:19 python2 -> python2.7
-rwxr-xr-x. 1 root root 7216 Oct 31 07:46 python2.7

10.查看现在的默认版本
[root@python3 ~]# python -V
Python 3.7.0
11.修改完python默认版本之后,会存不能执行yum命令,需要做一些修改,如下:

①Vim /usr/bin/yum: !/usr/bin/python 改成 !/usr/bin/python2.7 ②Vim /usr/libexec/urlgrabber-ext-down: /usr/bin/python 改为 /usr/bin/python2.7 ③Vim /usr/bin/yum-config-manager #!/usr/bin/python 改为 #!/usr/bin/python2.7

12.最后将pip指向到python3.7
[root@python3 ~]# ln -sf /usr/local/sbin/python-3.7/bin/pip3 /usr/bin/pip [root@python3 ~]# pip --version
pip 10.0.1 from /usr/local/sbin/python-3.7/lib/python3.7/site-packages/pip (python 3.7)
大功告成。
Centos7.7下安装Python3.7 并兼容python2.7的更多相关文章
- Centos7环境下安装python3.6.4 并与python2共存
最近安装了新系统centos7,本身自带python2.7,但是由于需要使用python3 来运行一些应用,所以想到在centos环境下安装python3,并保证其和python2 可以共存. 步骤如 ...
- centos7.2下安装python3.6.2
centos7.2默认已经安装了python2.7.5,因此要安装python3.6的话,得从python官网上下载相应版本的安装包 查看python2.7 1.下载:wget https://www ...
- centos7下安装Python3.7(与python2共存)
2019-01-22 22:50:05 centos7默认安装的是python2.7,然而python2基本上要淘汰了,所以有必要安装最新的python3 python,g++这些工具一般安装在/ ...
- Centos7.6下安装Python3.7
前言 话说不会开发的运维不是一个好的DBA,所以我要开始学习python了,写博客记录一下我的学习过程,另外别欺负我新来的,那个每天更博的技术流ken是我哥. 不说了,时间宝贵,开整. 1.首先来看一 ...
- CentOS7.5下安装Python3.7 --python3
1.将本地安装包上传到远程主机上 scp Python-3.7.0.tgz root@123.206.74.24:/root 2.扩展 安装Python之前安装Python相关的依赖包(主要是u红色部 ...
- centos7.2下安装python3.6.5
yum groupinstall 'Development Tools' 出现错误 系统 centos 7.3 使用命令 yum groupinstall 'Development Tools' 出现 ...
- Centos7.4下安装Python3
安装Python3 安装依赖包 yum -y groupinstall "Development tools" yum -y install zlib-devel bzip2-de ...
- Ubuntu下安装Python3(与旧Python2版本共存)
官网下载Python3的源码 进行配置,在源码目录运行如下命令. ./configure --prefix=/usr/local/python3 --enable-shared 进行编译,在源码目录运 ...
- centos7下安装python3.7
记录在2018年最后一个工作日: Linux环境坑爹得要死,环境本身有python2和python3.7两个版本:安装django2的时候,发现默认是python2:把python软连接到python ...
随机推荐
- 【Azure Redis 缓存】如何得知Azure Redis服务有更新行为?
问题描述 Azure Redis作为微软云提供的一种PaaS服务,由于PaaS的特性,服务端的安装和维护.修补.升级等操作均由平台放负责.虽然最终用户只需要关注当前服务的使用,但是后台的升级和补丁行为 ...
- 用Python修改本机适配器信息
主要参考来自[用Python干实事(一)自动修改Windows的IP.网关和DNS设置]. 使用_winreg模块来操作注册表实现相关信息的修改,它是python的内置模块.也可以通过Win32 Ex ...
- 牛客网暑期ACM多校训练营(第二场)carpet
传送门:carpet 题意 有一个n*m的地毯,aij表示地毯每格的元素,bij表示地毯每格的价格,要求选取一块价格最大值最小的地毯,并且这块地毯无限铺开之后,原地毯是其子矩阵. 题解 先找到这个矩阵 ...
- AtCoder Beginner Contest 164
比赛链接:https://atcoder.jp/contests/abc164 A - Sheep and Wolves #include <bits/stdc++.h> using na ...
- 高斯消元初步(Gauss算法)
Gauss算法,称为高斯消元算法,用来解决n元一次方程,在解决线性方程问题起着重要作用. 简述 运用高斯消元的方法,我们可以在O(n3)的时间求出n元线性方程,但是由于时间复杂度的原因,请注意题目数据 ...
- hdu2157 How many ways??
Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Total Submission ...
- Panasonic Programming Contest (AtCoder Beginner Contest 186) E.Throne (数学,线性同余方程)
题意:有围着一圈的\(N\)把椅子,其中有一个是冠位,你在离冠位顺时针\(S\)把椅子的位置,你每次可以顺时针走\(K\)个椅子,问最少要走多少次才能登上冠位,或者走不到冠位. 题解:这题和洛谷那个青 ...
- service配置文件
[Unit]Description="itcp Service"After=network.target cs_tcp.service [Service]Type=simpleGu ...
- Chapter Zero 0.1.3 其他单元设备以及运作流程
其他单元设备 五大单元中的控制单元.算数逻辑段元都被整合到CPU的封装中, 但其实系统单元中,不止有CPU(控制单元.算数逻辑单元), 计算机单元还有哪些? 系统单元:系统单元包括CPU.主存储器(内 ...
- Kubernets二进制安装(1)集群,软件,IP规划
1.Kubernetes节点信息情况 主机名 简称 角色 IP地址 操作系统 mfyxw10.mfyxw.com mfyxw10 K8S代理节点1 192.168.80.10 CentOS7.7 mf ...