CentOS7下python3.7.0安装教程

yipeiwu_com6年前Python基础

记录了CentOS7 安装python3.7.0的详细过程,供大家参考,具体内容如下

1.下载及解压

python3.7的安装包可从官网下载上传到主机,也可以用wget直接下载。

[root@yuioplvlinux-130 ~]# cd /usr/local/src/
[root@yuioplvlinux-130 src]# wget https://www.python.org/ftp/python/3.7.0/Python-3.7.0.tar.xz
[root@yuioplvlinux-130 src]# tar xvJf Python-3.7.0.tar.xz
[root@yuioplvlinux-130 src]# mv Python-3.7.0 /usr/local/python-3.7
[root@yuioplvlinux-130 src]# cd /usr/local/python-3.7/

2.安装

安装之前,首先安装两个python依赖的包;

[root@yuioplvlinux-130 python-3.7]# yum -y install zlib* libffi-devel

配置编辑参数;

[root@yuioplvlinux-130 python-3.7]# ./configure --prefix=/usr/local/sbin/python-3.7

然后编译和安装:“make”、“make install”;

安装完成后,若出现以下两行,说明安装成功;

Installing collected packages: setuptools, pip
Successfully installed pip-10.0.1 setuptools-39.0.1

也可以用“echo $?”查看,结果为0说明安装成功;

然后就可以使用python3了。

[root@yuioplvlinux-130 python-3.7]# /usr/local/sbin/python-3.7/bin/python3
Python 3.7.0 (default, Jul 21 2018, 13:45:48) 
[GCC 4.8.5 20150623 (Red Hat 4.8.5-28)] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> 

可以看到,虽然成功安装了python3.7,但是执行起来命令特别长,可以把python命令指向到到python3。

首先查看python命令的绝对路径,可以看到它是通过软链接执行到python2.7的。

[root@yuioplvlinux-130 ~]# python -V #查看python的默认版本
Python 2.7.5
[root@yuioplvlinux-130 ~]# which python #查看python命令的绝对路径
/usr/bin/python
[root@yuioplvlinux-130 ~]# ll /usr/bin/ |grep python
lrwxrwxrwx. 1 root root   7 7月 15 19:58 python -> python2
lrwxrwxrwx. 1 root root   9 7月 15 19:58 python2 -> python2.7
-rwxr-xr-x. 1 root root  7136 8月 4 2017 python2.7

那我们也可以做一个软链接指向到python3命令。

[root@yuioplvlinux-130 ~]# rm -rf /usr/bin/python #删除原有的软链接文件
[root@yuioplvlinux-130 ~]# ln -s /usr/local/sbin/python-3.7/bin/python3 /usr/bin/python
[root@yuioplvlinux-130 ~]# ll /usr/bin/ |grep python
lrwxrwxrwx. 1 root root  38 7月 21 14:18 python -> /usr/local/sbin/python-3.7/bin/python3
lrwxrwxrwx. 1 root root   9 7月 15 19:58 python2 -> python2.7
-rwxr-xr-x. 1 root root  7136 8月 4 2017 python2.7

现在python的默认版本就是python 3.7.0了。

[root@yuioplvlinux-130 ~]# python -V
Python 3.7.0
[root@yuioplvlinux-130 ~]# python
Python 3.7.0 (default, Jul 21 2018, 13:45:48) 
[GCC 4.8.5 20150623 (Red Hat 4.8.5-28)] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> 

修改完python的默认版本后,会存在一个问题,无法执行yum命令,修改yum命令文件,将头文件改为python2.7即可。

[root@yuioplvlinux-130 ~]# vim /usr/bin/yum
#!/usr/bin/python2.7 #将头文件改为python2.7

同样的,将pip也指向到python3.7。

[root@yuioplvlinux-130 ~]# ln -s /usr/local/sbin/python-3.7/bin/pip3 /usr/bin/pip
[root@yuioplvlinux-130 ~]# pip --version
pip 10.0.1 from /usr/local/sbin/python-3.7/lib/python3.7/site-packages/pip (python 3.7)

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

Python2.7版os.path.isdir中文路径返回false的解决方法

问题背景: 本来想写一个脚本来处理硬盘里的文件,并进行分类处理,但是发现一个问题,使用python内置os模块里的方法出现一些问题,具体的见示例。 主要使用的方法(python 2.7版...

详解Django admin高级用法

使用Django意味着后台框架的几乎所有内容都会和Django产生互动,排除功能全部手撸的情况. Django 后台admin有大量的属性和方法,拥有强大的功能和自定义能力.通过完整的代...

Django之模型层多表操作的实现

Django之模型层多表操作的实现

一、创建模型 1,一对多关系 一本书只有一个出版社,一个出版社可以出版多本书,从而书与出版社之间就构成一对多关系,书是‘多'的一方,出版社是‘一'的一方,我们在建立模型的时候,把外键写在...

基于python实现高速视频传输程序

今天要说的是一个高速视频流的采集和传输的问题,我不是研究这一块的,没有使用什么算法,仅仅是兴趣导致我很想搞懂这个问题.     1,首先是视频数据[摄像头图...

python网络编程之多线程同时接受和发送

本文实例为大家分享了python多线程同时接受和发的具体代码,供大家参考,具体内容如下 ''' 模仿qq 同时可以发送信息和接受信息多线程 ''' from socket imp...