一、下载源码包

# 切换到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. [Python]pip 国内源

    临时使用方法 pip install -i http://pypi.douban.com/simple/ --trusted-host pypi.douban.com celery END

  2. 全文检索Lucene框架---查询索引

    一. Lucene索引库查询 对要搜索的信息创建Query查询对象,Lucene会根据Query查询对象生成最终的查询语法,类似关系数据库Sql语法一样Lucene也有自己的查询语法,比如:“name ...

  3. js将已有数组重新分组(将数组每10项分成一组)

    项目中碰到的一个小需求:分页请求数据,一次请求60条,需要将后台返回的数组每10条分成一组渲染一个表格(表格使用的是ant-design-vue的table) 实现逻辑: var chunk = 10 ...

  4. Matplotlib绘制漫威英雄战力图,带你飞起来!

    目录 前言 期望功能 代码实现 一.导入matplotlib依赖包 二.支持显示中文 三.使用ggplot主题 四.根据能力项等分圆 五.生成n个子图 六.获取支持的颜色 六.绘制所有子图 更多示例 ...

  5. C# 8.0 新特性之二:接口默认实现

    ​      在C#8.0中,针对接口引入了一项新特性,就是可以指定默认实现,方便对已有实现进行扩展,也对面向Android和Swift的Api进行互操作提供了可能性.下面我们来看看该特性的的概念.规 ...

  6. Python—TCP的黏包问题以及UDP的分片问题

    TCP协议与UDP协议 TCP(transport control protocol,传输控制协议)是面向连接的,面向流的,提供高可靠性服务.收发两端(客户端和服务器端)都要有一一成对的socket, ...

  7. 利用MySQL之federated引擎实现DBLink功能

    有时候我们需要跨库join查询,但是配置多数据源成本又太高,Oracle提供了DBLink功能,MySQL中也有类似的实现:federated-engine. MySQL中使用federated引擎的 ...

  8. svn cleanup 失败问题解决

    将sqlite3.exe放到.svn的同级目录 4.启动cmd执行sqlite3 .svn/wc.db "select * from work_queue" 5.启动cmd执行sq ...

  9. mysql必知必会--过 滤 数 据

    使用 WHERE 子句 数据库表一般包含大量的数据,很少需要检索表中所有行.通常只 会根据特定操作或报告的需要提取表数据的子集.只检索所需数据需要 指定搜索条件(search criteria),搜索 ...

  10. 安装Nginx到CentOS(YUM)

    运行环境 系统版本:CentOS Linux release 7.3.1611 软件版本:nginx-1.12.2 硬件要求:无 安装过程 1.配置YUM源 [root@localhost ~]# r ...