由于Centos7默认安装了python2.7.5版本,因此想安装python 3.X版本就需要特殊处理。

详情可以参考南宫羽香的技术博客原文:https://www.cnblogs.com/lclq/p/5620196.html

忧臣解读的技术博客原文:https://www.cnblogs.com/anxminise/p/9650206.html

一、准备阶段

1.查看是否已经安装Python

Centos7默认安装了python2.7.5 因为一些命令要用它比如yum 它使用的是python2.7.5。

使用python -V命令查看一下是否安装Python:

然后查看一下Python可执行文件的位置:

进入到bin目录:

可以看到可执行文件python指向python2,python2又指向python2.7也就是说Python命令执行的系统预装的Python2.7。

要安装Python的其他版本先执行mv python python.bak命令备份python文件。

2.安装新版本的Python

下载Python新版本https://www.python.org/downloads/source/

可以看到截止到目前,最新版本为3.10.0版本是2121.10.4发布的。

下载.tar.xz包就可以了。其实下面的2个包其一都可以使用
Python-3.10.0.tgz (这个不是编译过的东西,不能解压之后直接使用)
Python-3.10.0.tar.xz (这个是pthon的源码)

将下载的tgz包通过Xftp等工具上传到Linux服务器。

注:下文中是用3.7.0版本作为示例的。

或者执行wget命令直接下载到服务器:

cd /home/ #回到用户目录
mkdir myhome #创建文件夹myhome
wget https://www.python.org/ftp/python/3.7.0/Python-3.7.0.tar.xz #下载3.7.0版本
tar -xvJf Python-3.7.0.tar.xz #解压缩

解压缩之后该目录下出现Python-3.7.0文件夹,进入到文件夹下执行编译安装。

二、安装阶段

1.安装编译相关工具

yum -y groupinstall "Development tools"
yum -y install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gdbm-devel db4-devel libpcap-devel xz-devel
yum install libffi-devel -y

2.编译安装

mkdir /usr/local/python3 #创建编译安装目录
cd Python-3.7.0
./configure --prefix=/usr/local/python3
make && make install

3.创建软连接

ln -s /usr/local/python3/bin/python3 /usr/local/bin/python3
ln -s /usr/local/python3/bin/pip3 /usr/local/bin/pip3

4.验证是否成功

python3 -V
pip3 -V

---------------------------------------------------------------------------------------------------------------------------

华丽的分割线

---------------------------------------------------------------------------------------------------------------------------

三、其他相关

执行 ./configure --prefix=/usr/local/python/python3 命令。./configure命令执行完毕之后创建一个文件creating Makefile,供下面的make命令使用 执行make install之后就会把程序安装到我们指定的目录中去。

Configure是一个可执行脚本,它有很多选项,在待安装的源码路径下使用命令./configure –help输出详细的选项列表。

其中--prefix选项是配置安装的路径,如果不配置该选项,安装后可执行文件默认放在/usr /local/bin,库文件默认放
在/usr/local/lib,配置文件默认放在/usr/local/etc,其它的资源文件放在/usr /local/share,比较凌乱。

如果配置--prefix,如:
./configure --prefix=/usr/local/test
可以把所有资源文件放在/usr/local/test的路径中,不会杂乱。
用了—prefix选项的另一个好处是卸载软件或移植软件。当某个安装的软件不再需要时,只须简单的删除该安装目录,
就可以把软件卸载得干干净净;移植软件只需拷贝整个目录到另外一个机器即可(相同的操作系统)。

当然要卸载程序,也可以在原来的make目录下用一次make uninstall,但前提是make文件指定过uninstall。

然后执行make、make install命令。

安装成功之后进入到python3文件夹可以看到Python的可执行文件目录、lib目录等相关目录。

执行ln -s /usr/local/python/python3/bin/python3 /usr/bin/python命令创建软连接。执行python -V查看Python是否安装成功。

安装成功:

3.修改yum配置文件

因为yum使用python2,因此替换为python3后可能无法正常工作,继续使用这个python2.7.5

因此修改yum配置文件(vi /usr/bin/yum)。

把文件头部的#!/usr/bin/python改成#!/usr/bin/python2.7保存退出即可。

因为yum使用python2,因此替换为python3后可能无法正常工作,继续使用这个python2.7.5因此修改yum配置文件(vi /usr/bin/yum)。把文件头部的#!/usr/bin/python改成#!/usr/bin/python2.7保存退出即可

CentOS 7 安装 Python 3.X版本的更多相关文章

  1. centos上安装python环境

    1.安装python-pip ​ 首先安装epel扩展源: ​ yum -y install epel-release ​ 更新完成之后,安装pip: ​ yum -y install python- ...

  2. 【Linux】CentOS下升级Python和Pip版本全自动化py脚本

    [Linux]CentOS下升级Python和Pip版本全自动化py脚本 CentOS7.6自带py2.7和py3.6 想要安装其它版本的话就要自己重新下载和编译py其它版本并且配置环境,主要是软链接 ...

  3. CentOS yum 安装LAMP PHP5.4版本

    CentOS yum 安装LAMP PHP5.4版本 [日期:2015-06-04] 来源:Linux社区  作者:rogerzhanglijie [字体:大 中 小]     Linux系统版本:C ...

  4. 在CentOS上安装Python

    首先我们需要在服务器上安装一个比较新的 Python,CentOS 5.8 默认装的 Python 是 2.4.3. [root@nowamagic ~]# python -V Python 我们需要 ...

  5. centos 7安装python 3

    linux-Centos7安装python3并与python2共存   1.查看是否已经安装Python CentOS 7.2 默认安装了python2.7.5 因为一些命令要用它比如yum 它使用的 ...

  6. centos下安装python

    下载网址:http://ftp.gnu.org/gnu/gdb/ 1.编译python必须安装开发工具 # yum groupinstall "Development tools" ...

  7. centos如何安装python库?

    通过yum install安装,先解决yum不能安装python库的问题 yum install -y  epel-release  #先安装epel源,参考http://sharadchhetri. ...

  8. centos下 安装python相关

    centos 安装python相关 python3 https://blog.csdn.net/tanxiaob/article/details/78725301 yum -y install zli ...

  9. 如何在CentOS上安装Tensorflow的gpu版本?

    系统配置 系统版本: Centos7.6 语言: Python3.5(anaconda3 4.2) 框架: Tensorflow 安装依赖 sudo yum install openjdk-8-jdk ...

  10. Windows下安装Python 3.X 版本

    一. Python下载 Python官方下载地址 演示下载的版本为Python 3.8.3 ,你可以根据自己的选择安装其他版本的Python 二. Python 安装 下载完安装包双击安装时出错(Wi ...

随机推荐

  1. 3 分钟把高质量 AI 知识库 FastGPT 装进企业微信

    FastGPT V4 已经上线,直接冲上 GitHub Trending. 如果你还不知道 FastGPT 是什么,可以先去看看作者的介绍 使用 FastGPT 构建高质量 AI 知识库 非常多的企业 ...

  2. Solution Set -「CF 1539」

    我是傻逼. 「CF 1539A」Contest Start Link. 答案是 \(\sum_{i=1}^{n-1}\min\{i,\lfloor\frac{t}{x}\rfloor\}\),等差数列 ...

  3. Solution -「CF 1303G」Sum of Prefix Sums

    Description Link. 对于一棵树,选出一条链 \((u,v)\),把链上结点从 \(u\) 到 \(v\) 放成一个 长度 \(l\) 的数组,使得 \(\sum_{i=1}^{l}\s ...

  4. Linux 下 C语言 open() 和 fopen() 区别

    Linux 下 C语言 open() 和 fopen() 区别   fopen() #include <stdio.h> FILE *fopen(const char *path, con ...

  5. Django框架——模板层

    文章目录 1 模板层 一 模版简介 二 模版语法之变量 views.py html文件 三 模版之过滤器 语法: default length filesizeformat date slice tr ...

  6. PostgreSQL学习笔记-6.基础知识:ALTER、TRUNCATE 、View(视图)、TRANSACTION 事务、LOCK 锁

    ALTER TABLE 命令 在 PostgreSQL 中,ALTER TABLE 命令用于添加,修改,删除一张已经存在表的列. 另外你也可以用 ALTER TABLE 命令添加和删除约束. 语法 用 ...

  7. 万字长文详解Java线程池面试题

    王有志,一个分享硬核 Java 技术的互金摸鱼侠加入 Java 人的提桶跑路群:共同富裕的Java人 今天是<面霸的自我修养>第 6 篇文章,我们一起来看看面试中会问到哪些关于线程池的问题 ...

  8. 传纸条 luoguP1006

    题目描述 小渊和小轩是好朋友也是同班同学,他们在一起总有谈不完的话题.一次素质拓展活动中,班上同学安排坐成一个 mm 行 nn 列的矩阵,而小渊和小轩被安排在矩阵对角线的两端,因此,他们就无法直接交谈 ...

  9. 数据结构与算法 | 深搜(DFS)与广搜(BFS)

    深搜(DFS)与广搜(BFS) 在查找二叉树某个节点时,如果把二叉树所有节点理理解为解空间,待找到那个节点理解为满足特定条件的解,对此解答可以抽象描述为: 在解空间中搜索满足特定条件的解,这其实就是搜 ...

  10. CSP-2023 复赛游记

    10.15 决定以后每天晚上都来. 洛天依也是. 10.16 想住 首旅京伦. 大巴车要求车况良好,保险齐全,进校后限速 20 km是什么鬼啊,新型速度单位. 距离最远的考区相距4公里 懂了,大巴车开 ...