linux centos 7.x 安装 python3.x 替换 python2.x的过程解析


Posted in Python onDecember 14, 2020

linux centos 7.x 安装 python3.x 替换 python2.x的过程解析

前言

一般而言,新的 centos 7.x 中自带的 python 都是 2.x 的版本。对于我们运行 python 软件支持并不友好,所以需要进行升级操作

下载 python3 的包之前,要先安装相关的依赖包,用于下载编译 python3:

yum install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gcc make

安装 pip

默认的 centos7 是没有安装 pip,先添加 epel 扩展源

yum -y install epel-release

安装 pip

curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py

一般 centos7 系统都有自带的 python 2.x 的版本,所以直接使用 python 运行即可

python get-pip.py

pip 测试安装

pip -V

# pip 版本展示如下
pip 20.3.1 from /usr/local/python3/lib/python3.6/site-packages/pip (python 3.6)

安装 wget

安装 wget 命令如下

pip install wget

用 wget 下载 python3 的源码包,或者自己先下载好,上传到服务器再安装,如果网络快可以直接安装

wget https://www.python.org/ftp/python/3.6.8/Python-3.6.8.tar.xz

编译 python 源码包

编译 python3 源码包,解压

xz -d Python-3.6.8.tar.xz
tar -xf Python-3.6.8.tar

进入解压后的目录,依次执行下面命令进行手动编译

cd Python-3.6.8
./configure prefix=/usr/local/python3

如果执行报如下错误,是因为由于本机缺少 gcc 编译环境,如果不报错,直接执行下一步骤

configure: error: in `/root/Python-3.6.8':
configure: error: no acceptable C compiler found in $PATH
See `config.log' for more details


# 执行命令
yum install -y gcc

执行成功后,开始手动编译,时间稍等几分钟

make && make install

安装依赖 zlib、zlib-deve

yum install zlib zlib
yum install zlib zlib-devel

最后没提示出错,就代表正确安装了,在/usr/local/目录下就会有 python3 目录

替换 python 软链接

添加软链接,将原来的链接备份,如果没有 python 软连接可以不执行

mv /usr/bin/python /usr/bin/python.bak

添加 python3 的软链接

ln -s /usr/local/python3/bin/python3.6 /usr/bin/python

测试是否安装成功了

python -V

# python 版本展示
Python 3.6.8

更新 yum 文件

而因为 yum 使用的是 python2,所以替换成为 python3 后可能会无法工作,因此还需要修改 yum 的配置文件

在此之前需要确认下,python 是否有 2.7 的版本

linux centos 7.x 安装 python3.x 替换 python2.x的过程解析

确认后就可以修改了

# 把文件头部的 #! /usr/bin/python 改成 #! /usr/bin/python2.7
vi /usr/bin/yum
# 把文件头部的 #! /usr/bin/python 改成 #! /usr/bin/python2.7
vi /usr/libexec/urlgrabber-ext-down
# 把文件头部的 #! /usr/bin/python 改成 #! /usr/bin/python2.7
# 如果没有此文件,就不必修改
vi /usr/bin/yum-config-manager

修改完成后可以下载个平时比较常用的 tree 组件

yum install tree -y

到此这篇关于linux centos 7.x 安装 python3.x 替换 python2.x的文章就介绍到这了,更多相关 python3.x 替换 python2.x内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
python基础教程之基本内置数据类型介绍
Feb 20 Python
从零学Python之引用和类属性的初步理解
May 15 Python
详解Python中的各种函数的使用
May 24 Python
python的paramiko模块实现远程控制和传输示例
Oct 13 Python
pandas 将list切分后存入DataFrame中的实例
Jul 03 Python
Python调用服务接口的实例
Jan 03 Python
详解Python给照片换底色(蓝底换红底)
Mar 22 Python
pytorch的batch normalize使用详解
Jan 15 Python
python利用opencv实现SIFT特征提取与匹配
Mar 05 Python
Python判断远程服务器上Excel文件是否被人打开的方法
Jul 13 Python
Python tkinter实现日期选择器
Feb 22 Python
python使用tkinter实现透明窗体上绘制随机出现的小球(实例代码)
May 17 Python
Python获取指定网段正在使用的IP
Dec 14 #Python
python利用pytesseract 实现本地识别图片文字
Dec 14 #Python
python 利用百度API识别图片文字(多线程版)
Dec 14 #Python
python3中for循环踩过的坑记录
Dec 14 #Python
Python 数据分析之逐块读取文本的实现
Dec 14 #Python
Python 2.6.6升级到Python2.7.15的详细步骤
Dec 14 #Python
python 通过pip freeze、dowload打离线包及自动安装的过程详解(适用于保密的离线环境
Dec 14 #Python
You might like
PHP动态图像的创建
2006/10/09 PHP
3.从实例开始
2006/10/09 PHP
php5.3 goto函数介绍和示例
2014/03/21 PHP
php实现二进制和文本相互转换的方法
2015/04/18 PHP
PHP学习笔记之session
2018/05/06 PHP
js 学习笔记(三)
2009/12/29 Javascript
js 函数调用模式小结
2011/12/26 Javascript
js实现翻页后保持checkbox选中状态的实现方法
2012/11/03 Javascript
js实现点击后将文字或图片复制到剪贴板的方法
2014/08/04 Javascript
javascript面向对象快速入门实例
2015/01/13 Javascript
简单实现限制uploadify上传个数
2015/11/16 Javascript
jQuery使用$.each遍历json数组的简单实现方法
2016/04/18 Javascript
js对字符串进行编码的方法总结(推荐)
2016/11/10 Javascript
jquery实现刷新随机变化样式特效(tag标签样式)
2017/02/03 Javascript
Angular2搜索和重置按钮过场动画
2017/05/24 Javascript
js for终止循环 跳出多层循环
2018/10/04 Javascript
JS/jQuery实现获取时间的方法及常用类完整示例
2019/03/07 jQuery
angular 实现同步验证器跨字段验证的方法
2019/04/11 Javascript
原生JS实现音乐播放器的示例代码
2021/02/25 Javascript
[08:42]DOTA2每周TOP10 精彩击杀集锦vol.2
2014/06/25 DOTA
Python基于回溯法子集树模板解决选排问题示例
2017/09/07 Python
Django使用unittest模块进行单元测试过程解析
2019/08/02 Python
浅谈Tensorflow加载Vgg预训练模型的几个注意事项
2020/05/26 Python
python学习笔记之多进程
2020/08/06 Python
详解win10下pytorch-gpu安装以及CUDA详细安装过程
2021/01/28 Python
Python 转移文件至云对象存储的方法
2021/02/07 Python
详解html5 canvas 微信海报分享(个人爬坑)
2018/01/12 HTML / CSS
iHerb香港:维生素、补充剂和天然保健品
2017/08/01 全球购物
会计主管岗位职责
2014/01/03 职场文书
家长会邀请书
2014/01/25 职场文书
锦旗标语大全
2014/06/23 职场文书
国际经济与贸易专业求职信
2014/07/10 职场文书
2014年食堂工作总结
2014/11/20 职场文书
MySQL如何使用使用Xtrabackup进行备份和恢复
2021/06/21 MySQL
mybatis 获取无数据的字段不显示的问题
2021/07/15 Java/Android
java设计模式--原型模式详解
2021/07/21 Java/Android