python3.7的安装包可从官网下载上传到主机,也可以用wget直接下载。

[root@xxx ~]# cd /usr/local/src/
[root@xxx src]# wget https://www.python.org/ftp/python/3.7.0/Python-3.7.0.tar.xz
[root@xxx src]# tar xvJf Python-3.7.0.tar.xz
[root@xxx src]# mv Python-3.7.0 /usr/local/python-3.7
[root@xxx src]# cd /usr/local/python-3.7/

安装之前,首先安装两个python依赖的包;

[root@xxx python-3.7]# yum -y install zlib* libffi-devel

配置编辑参数;

[root@xxx python-3.7]# ./configure --prefix=/usr/local/sbin/python-3.7

然后编译和安装:“make”、“make install”;

安装完成后,若出现以下两行,说明安装成功;

Installing collected packages: setuptools, pip
Successfully installed pip-10.0.1 setuptools-39.0.1

也可以用“echo $?”查看,结果为0说明安装成功;

然后就可以使用python3了。

[root@xxx python-3.7]# /usr/local/sbin/python-3.7/bin/python3
Python 3.7.0 (default, Jul 21 2018, 13:45:48)
[GCC 4.8.5 20150623 (Red Hat 4.8.5-28)] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>>

可以看到,虽然成功安装了python3.7,但是执行起来命令特别长,可以把python命令指向到到python3。

首先查看python命令的绝对路径,可以看到它是通过软链接执行到python2.7的。

[root@xxx ~]# python -V #查看python的默认版本
Python 2.7.5
[root@xxx ~]# which python #查看python命令的绝对路径
/usr/bin/python
[root@xxx ~]# ll /usr/bin/ |grep python
lrwxrwxrwx. 1 root root 7 7月 15 19:58 python -> python2
lrwxrwxrwx. 1 root root 9 7月 15 19:58 python2 -> python2.7
-rwxr-xr-x. 1 root root 7136 8月 4 2017 python2.7

这里也可以做一个软链接指向到python3命令。

[root@xxx ~]# rm -rf /usr/bin/python #删除原有的软链接文件
[root@xxx ~]# ln -s /usr/local/sbin/python-3.7/bin/python3 /usr/bin/python
[root@xxx ~]# ll /usr/bin/ |grep python
lrwxrwxrwx. 1 root root 38 7月 21 14:18 python -> /usr/local/sbin/python-3.7/bin/python3
lrwxrwxrwx. 1 root root 9 7月 15 19:58 python2 -> python2.7
-rwxr-xr-x. 1 root root 7136 8月 4 2017 python2.7

现在python的默认版本就是python 3.7.0了。

[root@xxx ~]# python -V
Python 3.7.0
[root@xxx ~]# python
Python 3.7.0 (default, Jul 21 2018, 13:45:48)
[GCC 4.8.5 20150623 (Red Hat 4.8.5-28)] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>>

修改完python的默认版本后,会存在一个问题,无法执行yum命令,修改yum命令文件,将头文件改为python2.7即可。

[root@xxx ~]# vim /usr/bin/yum
#!/usr/bin/python2.7 #将头文件改为python2.7

同样的,将pip也指向到python3.7。

[root@xxx ~]# ln -s /usr/local/sbin/python-3.7/bin/pip3 /usr/bin/pip
[root@xxx ~]# pip --version
pip 10.0.1 from /usr/local/sbin/python-3.7/lib/python3.7/site-packages/pip (python 3.7)

CentOS7中替换安装python3.7.0的更多相关文章

  1. CentOS7下简单安装python3.7.0步骤

    一.安装编译工具 #yum -y install gcc #yum -y groupinstall "Development tools" #yum -y install zlib ...

  2. Linux下安装Python3.3.0

    Linux下安装Python3.3.0_路易_新浪博客 Linux下安装Python3.3.0 (2013-01-08 11:45:37)

  3. centos下安装python3.7.0以上版本时报错ModuleNotFoundError: No module named '_ctypes'

    centos下安装python3.7.0以上版本时报错ModuleNotFoundError: No module named '_ctypes'的解决办法 3.7版本需要一个新的包libffi-de ...

  4. centos7源码安装Python3的前提条件

    centos7源码安装Python3的前提条件: # yum -y install openssl-devel bzip2-devel expat-devel gdbm-devel readline- ...

  5. RabbitMQ3.9.7在CentOS7中的安装搭建

    1.概述 RabbitMQ 是目前很流行的消息中间件之一,可靠性非常好,能简单的实现高可用.负载均衡. 今天我们先来聊一下 RabbitMQ 3.9.7 版本在 CentOS7 中的安装. 2.安装R ...

  6. centos7.2上安装python3和pip19.0.3

    安装libressl 下载地址: https://ftp.openbsd.org/pub/OpenBSD/LibreSSL/libressl-2.7.4.tar.gz 或者 :https://pan. ...

  7. centos7下编译安装python3.7,且与python2.7.5共存

    环境:Centos7.6 x64 一.安装python3.7 下载python源码包: wget https://www.python.org/ftp/python/3.7.4/Python-3.7. ...

  8. Centos7.4下安装Jumpserver 1.0.0(支持windows组件)

    0)系统环境CentOS 7.4 IP: 192.168.100.10 [root@jumpserver-server ~]# cat /etc/redhat-release CentOS Linux ...

  9. Centos7.3下安装Jumpserver 1.0.0(支持windows组件)

    Jumpserver最新版本支持windows组件,废话不多介绍了,下面直接介绍下部署过程: 0)系统环境 CentOS 7.3 IP: 192.168.10.210 [root@jumpserver ...

随机推荐

  1. dojo DataGrid实现表格数据编辑的解决方案

    在官网上看见的DataGrid编辑非常简单,但我实现的时候总是出现问题.经过N久的摸索,终于搞定了,期间出现了多处困难,下面说些解决办法的流程. 我实现的表格在页面加载时是不显示数据,只有通过表单像服 ...

  2. str.replace()和re.sub()/calendar.month_abbr/re.subn()/upper和lower和capitalize/贪婪匹配和费贪婪匹配/re.S和re.DOTALL 笔记

    str.replace()可以进行简单的替换 >>> a = 'one.txt, index.py, index.php, index.html, index.js' >> ...

  3. HanLP中人名识别分析详解

    HanLP中人名识别分析详解 在看源码之前,先看几遍论文<基于角色标注的中国人名自动识别研究> 关于命名识别的一些问题,可参考下列一些issue: l ·名字识别的问题 #387 l ·机 ...

  4. MS Batch AI

    微软的Batch AI服务是一项新服务,它可以帮助你在GPU pool上训练和测试机器学习模型,包括深度学习模型.它简化了在当前许多流行的深度学习框架(如TensorFlow.Microsoft认知工 ...

  5. Python实战(6)单线程和多线程导入mysql数据对比测试

    单线程脚本 导入文件的行数 # wc -l /data/logs/testlog/20120219/testlog1/* 1510503 total # -*- coding: utf-8 -*- # ...

  6. matchmove流程中修改Maya相机数据的脚本

    matchmove组的流程涉及到syntheyes与maya,nuke交接的问题.syntheyes会生成包含去畸变节点的nuke工程 和带跟踪信息的maya工程.在nuke工程上渲染得到去畸变的序列 ...

  7. TensorFlow:tf.nn.max_pool实现池化操作

    tf.nn.max_pool(value, ksize, strides, padding, name=None) 参数是四个,和卷积很类似: 第一个参数value:需要池化的输入,一般池化层接在卷积 ...

  8. Docker容器 暴露多个端口

    1.创建容器是指定 docker run -p <host_port1>:<container_port1> -p <host_port2>:<contain ...

  9. 黄聪:移动应用抓包调试利器Charles

    一.Charles是什么?   Charles是在 Mac或Windows下常用的http协议网络包截取工具,是一款屌的不行的抓包工具,在平常的测试与调式过程中,掌握此工具就基本可以不用其他抓包工具了 ...

  10. git .gitignore文件

    .gitignore ! /*   忽略所有的文件 !/pages/  添加根目录下的所有文件被跟踪