一、下载源码包

# 切换到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. 前端html,css考点

    1, 内联元素,块级元素相关知识点 参考链接:https://edu.aliyun.com/a/103378 (1)置换元素 概念:浏览器根据元素的标签和属性,来决定元素的具体显示内容.<img ...

  2. 轮播组件/瀑布流/组合搜索/KindEditor插件

    一.企业官网 ### 瀑布流 ​ Models.Student.objects.all() #获取所有学员信息 ​ 通过div进行循环图片和字幕 ​ 1.以template模板方法实现瀑布流以列为单位 ...

  3. PMP--2.2 效益管理计划

    一.文件背景概述 ​​​1. 所需文件/数据 制定效益管理计划需要使用商业论证和需求评估中的数据和信息,例如,成本效益分析数据. 成本效益分析数据是在商业论证和需求评估中得到的,在成本效益分析中已经把 ...

  4. Java实体对象为什么要实现Serializable接口?

    前言 Java实体对象为什么一定要实现Serializable接口呢?在学JavaSE的时候有些实体对象不实现Serializable不是也没什么影响吗? 最近在学习mybatis的时候发现,老师写的 ...

  5. HDU-1754 I Hate It (树状数组模板题——单点更新,区间查询最大值)

    题目链接 ac代码(注意字符读入前需要注意回车的影响) #include<iostream> #include<cstdio> #include<cstring> ...

  6. ARC 064 F-Rotated Palindromes

    题意 问有多少个长度为 \(N\) 且字符集大小为 \(K\) 的字符串可以通过回文串旋转 (把第一个字符移到最后)若干次得到.\(N,K\le 10^9\) 做法 设\(f_i\)为最小周期为\(i ...

  7. 洛谷P1063能量项链(区间dp)

    题目描述: 给定一串序列x[],其中的每一个Xi看作看作一颗珠子,每个珠子包含两个参数,head和tail,前一颗的tail值是后一个的head值,珠子呈现环形(是一条项链),所以最后一颗的tail是 ...

  8. NIO学习笔记,从Linux IO演化模型到Netty—— 从BIO到epoll模型

    本文不涉及具体代码,只分析Linux IO演化的心路历程,学习资料来源网络,不保证一定正确,若有错误,欢迎指出. BIO 服务端创建socket(80端口),文件描述符3号. 当线程调用accept时 ...

  9. Auto-scaling scikit-learn with Apache Spark

    来源:https://databricks.com/blog/2016/02/08/auto-scaling-scikit-learn-with-apache-spark.html Data scie ...

  10. (转)java 多线程 对象锁&类锁

    转自:http://blog.csdn.net/u013142781/article/details/51697672 最近工作有用到一些多线程的东西,之前吧,有用到synchronized同步块,不 ...