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 相关文章推荐
wxpython 学习笔记 第一天
Mar 16 Python
Python字符和字符值(ASCII或Unicode码值)转换方法
May 21 Python
在Python的Django框架中调用方法和处理无效变量
Jul 15 Python
python调用API实现智能回复机器人
Apr 10 Python
基于python OpenCV实现动态人脸检测
May 25 Python
浅析Python 3 字符串中的 STR 和 Bytes 有什么区别
Oct 14 Python
Django框架模板的使用方法示例
May 25 Python
python 协程中的迭代器,生成器原理及应用实例详解
Oct 28 Python
使用 Python 写一个简易的抽奖程序
Dec 08 Python
Python 批量读取文件中指定字符的实现
Mar 06 Python
Django Xadmin多对多字段过滤实例
Apr 07 Python
Python中的np.argmin()和np.argmax()函数用法
Jun 02 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语言流程控制中的主动与被动
2012/11/05 PHP
基于PHP开发中的安全防范知识详解
2013/06/06 PHP
YII中assets的使用示例
2014/07/31 PHP
PHP 中提示undefined index如何解决(多种方法)
2016/03/16 PHP
phpStorm2020 注册码
2020/09/17 PHP
JS代码判断IE6,IE7,IE8,IE9的函数代码
2013/08/02 Javascript
Javascript setInterval的两种调用方法(实例讲解)
2013/11/29 Javascript
js实现二代身份证号码验证详解
2014/11/20 Javascript
基于jQuery实现下拉框
2014/11/24 Javascript
Jquery中$.post和$.ajax的用法小结
2015/04/28 Javascript
AngularJS 使用$sce控制代码安全检查
2016/01/05 Javascript
jquery分页插件jquery.pagination.js实现无刷新分页
2016/04/01 Javascript
jQuery模拟实现天猫购物车动画效果实例代码
2017/05/25 jQuery
Vue2.0用户权限控制解决方案
2017/11/29 Javascript
jQuery实现滚动到底部时自动加载更多的方法示例
2018/02/18 jQuery
jQuery - AJAX load() 实例用法详解
2019/08/27 jQuery
Vue混入mixins滚动触底的方法
2019/11/22 Javascript
Postman动态获取返回值过程详解
2020/06/30 Javascript
Vue 实现监听窗口关闭事件,并在窗口关闭前发送请求
2020/09/01 Javascript
Python回调函数用法实例详解
2015/07/02 Python
python3.5 email实现发送邮件功能
2018/05/22 Python
利用Python半自动化生成Nessus报告的方法
2019/03/19 Python
python中的列表与元组的使用
2019/08/08 Python
OpenCV 表盘指针自动读数的示例代码
2020/04/10 Python
python和opencv构建运动检测器的实现
2021/03/03 Python
纯css3实现的鼠标悬停动画按钮
2014/12/23 HTML / CSS
CSS3实现彩色进度条动画的示例
2020/10/29 HTML / CSS
澳大利亚购买最佳炊具品牌网站:Cookware Brands
2019/02/16 全球购物
如何执行一个shell程序
2012/11/23 面试题
关于抽烟的检讨书
2014/02/25 职场文书
大学生村官承诺书
2014/03/28 职场文书
防邪知识进家庭活动方案
2014/08/26 职场文书
python生成随机数、随机字符、随机字符串
2021/04/06 Python
Apache Linkis 中间件架构及快速安装步骤
2022/03/16 Servers
Redis实现短信验证码登录的示例代码
2022/06/14 Redis
element tree树形组件回显数据问题解决
2022/08/14 Javascript