一、下载源码包

# 切换到root目录
[root@localhost ~] cd /root/ # 安装wget
[root@localhost ~] yum -y install wget # 使用wget下载到目录
[root@localhost ~] wget https://www.python.org/ftp/python/3.7.0/Python-3.7.0.tar.xz # 解压
[root@localhost ~] tar xvf Python-3.7.0.tar.xz

二、安装依赖

[root@localhost ~] yum install gcc openssl-devel bzip2-devel expat-devel gdbm-devel sqlite-devel libffi-devel

三、编译安装

# 切换到解压后的目录Python-3.7.0
[root@localhost ~] cd Python-3.7.0 # 编译
[root@localhost Python-3.7.0] ./configure --prefix=/usr/local/python3.7 --enable-shared CFLAGS=-fPIC # 生成安装文件,进行安装
[root@localhost Python-3.7.0] make && make install

四、配置环境

# 备份python软连接,pip如果不存在就不用备份
[root@localhost Python-3.7.0] mv -i /usr/bin/python /usr/bin/python.bak
[root@localhost Python-3.7.0] mv -i /usr/bin/pip /usr/bin/pip.bak # 创建python3的连接
[root@localhost Python-3.7.0] ln -sv /usr/local/python3.7/bin/python3 /usr/bin/python
[root@localhost Python-3.7.0] ln -sv /usr/local/python3.7/bin/pip3 /usr/bin/pip # 配置动态库
[root@localhost Python-3.7.0] vim /etc/ld.so.conf.d/python.conf
# 写入内容
/usr/local/python3.7/lib
# 启用配置
[root@localhost Python-3.7.0] ldconfig

五、解决yum和防火墙问题

# 修改下面几个文件内容的第一行的python为python2.7
[root@localhost Python-3.7.0] vim /usr/libexec/urlgrabber-ext-down
[root@localhost Python-3.7.0] vim /usr/bin/yum
[root@localhost Python-3.7.0] vim /usr/bin/firewall-cmd
[root@localhost Python-3.7.0] vim /usr/bin/firewall-offline-cmd
[root@localhost Python-3.7.0] vim /usr/sbin/firewalld # 验证yum
[root@localhost Python-3.7.0] yum list
# 验证firewall
[root@localhost Python-3.7.0] systemctl status firewalld.service

六、修改pip源为阿里云

# 创建配置文件pip.conf
[root@localhost Python-3.7.0] cd /root/ && mkdir .pip && cd .pip && touch pip.conf #把下列内容写入到pip.conf文件
[global]
index-url = https://mirrors.aliyun.com/pypi/simple/
[install]
trusted-host=mirrors.aliyun.com # 更新pip到最新版
[root@localhost Python-3.7.0] pip install --upgrade pip

七、校验、删除

# 命令行输入python,即可查看到版本号,如果还是2.7之类的就是没成功
[root@localhost Python-3.7.0] python
Python 3.7.0 (default, Jan 21 2020, 09:22:18)
[GCC 4.8.5 20150623 (Red Hat 4.8.5-39)] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> # python命令下,按住Ctrl+D退出
[root@localhost Python-3.7.0] cd /root/ # 删除解压文件和安装包,如果需要也可以不删除
[root@localhost ~] rm -rf Python-3.7.0 Python-3.7.0.tar.xz

centos7中python2.7升级到python3.7的更多相关文章

  1. python2.7升级到python3后,用pip进行安装时报Fatal error in launcher:Unbale to create process using`""

    解决:python2.7升级到python3后,用pip进行安装时报Fatal error in launcher:Unbale to create process using`"" ...

  2. centos7.2 python2.7升级python3.6退格键不能用

    yum install readline-devel ./configure  --prefix=/usr/py/py3.6    (目录是自定义的这个根据实际情况来) make && ...

  3. centos6.5系统python2.6升级到python3.6

    1.安装必备的工具 wget:yum install wget gcc:yum install gcc zlib zlib-devel: yum install zlib zlib-devel -y ...

  4. python2.7升级到python3.6注意事项

    python3.6下载地址:https://www.python.org/downloads/source/ 1.安装依赖包:gcc   openssl-devel.zlib-devel.readli ...

  5. python2.7 升级到 python3.6

    1.命令 yum -y install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel t ...

  6. python2代码升级到python3工具

    python模块lib2to3(py2转py3自动化工具) Usage: 2to3 [options] file|dir ... Options: -h, --help show this help ...

  7. Anaconda在Python3和Python2之间切换,Conda命令,anaconda中python的升级和降级

    当在pycharm IDE中指定不同的Python版本时,设置方法 File->Setting->Project:XXXX->Project Interpreter    选择不同位 ...

  8. Python第五十一天 python2升级为python3

    Python第五十一天  python2升级为python3 公司使用的生产环境系统是centos7,所以这里以centos7系统为基础,讲解将python2升级为python3的方法 centos7 ...

  9. 自动发布工具版本从python2升级成python3后遇到的种种问题(涉及paramiko,Crypto,zipfile等等)

    从在公司实习到正式入职,一直还在被同事使用的是我写的一个自动发布工具.该工具的主要功能是:开发人员给出需要更新的代码包(zip格式),测试人员将该代码包部署到测服,这些代码包和JIRA数据库里的项目信 ...

随机推荐

  1. 1138 - Trailing Zeroes (III) 二分

    1138 - Trailing Zeroes (III)   You task is to find minimal natural number N, so that N! contains exa ...

  2. Day6前端学习之路——布局

    一.定位 1)静态定位  position:static(默认) 2)相对定位 position:relative(要配合top.bottom.left.right等属性来使用) 3)绝对定位 pos ...

  3. Day7前端学习之路——多栏布局

    该文章主要讨论两栏布局和三栏布局,三栏布局包括很著名的圣杯布局和双飞翼布局 一.两栏布局的七种方法(左边固定,右边自适应) 原理: block水平元素宽度能够跟随父容器调节的流动特性,block级别的 ...

  4. 【转载】详解linux下的串口通讯开发

    来源:https://www.cnblogs.com/sunyubo/archive/2010/09/26/2282116.html 串行口是计算机一种常用的接口,具有连接线少,通讯简单,得到广泛的使 ...

  5. 对CAN signal 的一点理解

      首先每个 ECU是一个网络节点,每个网络节点可收发一些 Message,每个Message 由CAN signals构成.每个 CAN signal利用一个或多个连续的2进制位来表示承载的信息.下 ...

  6. mysql出现 Unknown column 'Password' in 'field list'

    linux安装了mysql之后初始化密码获取:出现了下面的内容,密码很尴尬,无法用root登录: grep 'temporary password' /var/log/mysqld.log [Note ...

  7. Mysql数据库操作(命令行)

    1 环境 树莓派: mysql: 2  指令 以下是从命令行中连接mysql服务器的简单实例: [root@host]# mysql -u root -p Enter password:****** ...

  8. Centos7没有IP地址,查看网络状态显示No suitable device found for this connection (devint match))

    今天打开虚拟机,使用 ifconfig 命令时,没有显示出 IP 地址 (更好的阅读体验可访问 这里 ) 使用 systemctl status network 命令查看网络状态 显示没有合适的网络装 ...

  9. JS高阶编程技巧--柯理化函数

    首先看一段代码: let obj = { x: 100 }; function fn(y) { this.x += y; console.log(this); } 现在有一个需求:在1秒后,执行函数f ...

  10. mysql查询时不区分大小写

    一次偶然的机会,发现在登陆验证时,改变用户名的大小写,同样可以登录成功,这是由于,当时使用的mysql数据库对大小写不敏感,查询时总是能查询到数据.一番查找资料,给出的原因是:在创建数据库的时候,选择 ...