环境:Centos7.6 x64

一、安装python3.7

下载python源码包:

wget https://www.python.org/ftp/python/3.7.4/Python-3.7.4.tgz

如果没有wget命令,可以使用命令安装:yum -y install wget

安装依赖包,避免安装过程中出现的 "zipimport.ZipImportError" 错误 和 "ModuleNotFoundError: No module named '_ctypes'" 错误:

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

解压、编译、安装:

tar -zxvf Python-3.7.4.tgz
cd Python-3.7.4
./configure --prefix=/usr/local/python3 --enable-optimizations
make && make install 其他选项:--enable-shared 启用共享,方便其他依赖python的一些内置库(比如 mysqlclient)的资源的正常安装

修改环境变量:

vim /etc/profile

找到 "export PATH" 开头的行,在此行之前,插入新行,内容如下:

PATH=$PATH:/usr/local/python3/bin
#注意:等号两侧无空格,冒号:不能省

保存退出,执行命令:

source /etc/profile

现在我们看一下两个版本的python和pip是否共存:

[root@localhost ~]# python3 -V
Python 3.7.4
[root@localhost ~]# pip3 -V
pip 19.0.3 from /usr/local/python3/lib/python3.7/site-packages/pip (python 3.7) [root@localhost ~]# python -V
Python 2.7.5
[root@localhost ~]# pip -V
pip 19.1.1 from /usr/lib/python2.7/site-packages/pip (python 2.7)

因为系统的yum,以及其他组件,均依赖python2.7.5,所以不建议使用软链接的方式替换原来的python2环境。使用python3的时候,我们只需要按如下的操作即可:

pip3 install 包名
python3 -m pip install 包名
python3 -m pip install pymongo (安装Python3的pymongo包)
python3 myscripts.py
pip3 install --upgrade pip (升级pip3版本)
......

安装完成。

centos7下编译安装python3.7,且与python2.7.5共存的更多相关文章

  1. CentOS7下编译安装Python3.7.x【亲测有效】

    所有操作都在root用户下操作 下载安装包 编译安装 建立软链接 验证 安装: 更新yum: yum update 安装Python依赖: yum install openssl-devel bzip ...

  2. centos7下编译安装php-7.0.15(PHP-FPM)

    centos7下编译安装php-7.0.15(PHP-FPM) 一.下载php7源码包 http://php.net/downloads.php 如:php-7.0.15.tar.gz 二.安装所需依 ...

  3. CentOS7下编译安装redis-5.0.9

    CentOS7下编译安装redis-5.0.9 本文地址http://yangjianyong.cn/?p=171转载无需经过作者本人授权 下载redis #code start wget https ...

  4. CentOS7.6编译安装Python-3.7.4

    安装步骤 1. 下载安装包.wget https://www.python.org/ftp/python/3.7.4/Python-3.7.4.tgz<说明>如果报SSL/TSL错误,则加 ...

  5. Centos7.2下编译安装python3.7

    1.安装python3.7所需要的依赖. yum install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel rea ...

  6. Linux下编译安装python3

    Linux下默认系统自带python2.6的版本,这个版本被系统很多程序所依赖,所以不建议删除,如果使用最新的Python3那么我们知道编译安装源码包和系统默认包之间是没有任何影响的,所以可以安装py ...

  7. CentOS7 下编译安装 Samba,什么是 SMB/CIFS 协议

    目录 一.关于 Samba 1. SMB 2. Samba 二.yum 安装 Samba 1. 安装 Samba 2. 查看版本 3. 查看配置文件 4. 启动服务 5. 本地客户端验证 6. Win ...

  8. Centos7手动编译安装Python3

    Python3的安装方式非常的简单,首先去到Python下载目录下载想要的Python包,这里我选择了3.6.5版本 $ wget https://www.python.org/ftp/python/ ...

  9. centos7下编译安装php7.3

    一.下载php7.3的源码 https://www.php.net/downloads.php 下载php-7.3.4.tar.gz 二.安装gcc,gcc-c++,kernel-devel yum ...

随机推荐

  1. npm与cnpm的区别

    NPM(Node Package Manager,节点包管理器)是NodeJS的包管理器,用于节点插件的管理(包括安装,卸载和管理依赖等).NPM是随同新版的NodeJS一起安装的包管理工具,所以我们 ...

  2. vue的provide和inject特性

    由来 组件之间的通信可以通过props和$emit的方式进行通信,但是如果组件之间的关系非常复杂的话,通过以上的方式会很麻烦,并且程序会非常脆弱,没有建中性可言. 在==vue2.2.0 中新增pro ...

  3. Centos7 下 PHP 添加缺少的组件 sockets 和 openssl

    环境是 centos7 + nginx 1.14 + php 7.2.18,由于新增邮件发送功能,使用的是 socket 通讯的方式,需要开启 php 的 sockes 和 openssl 扩展 安装 ...

  4. 阿里面试实战题3----String,StringBuilder,StringBuffer区别

    String public final class String implements java.io.Serializable, Comparable<String>, CharSequ ...

  5. [Spring cloud 一步步实现广告系统] 11. 使用Feign实现微服务调用

    上一节我们使用了Ribbon(基于Http/Tcp)进行微服务的调用,Ribbon的调用比较简单,通过Ribbon组件对请求的服务进行拦截,通过Eureka Server 获取到服务实例的IP:Por ...

  6. MySQL逻辑控制语句的使用

    一.IF语句     1).   IF(expr1,expr2,expr3) 如果expr1为true则结果为expr2否则为expr3 -->相当于三元运算符                  ...

  7. OC代码规范小记

    代码规范 一:基本代码命名 1.通用原则 尽量清晰又简洁,无法两全时清晰更重要,可读性优先级更高. insertObject:atIndex: 好的 insert:at 坏的 removeObject ...

  8. nginx学习(四):nginx处理web请求机制

    worker抢占机制 如下图所示,如果有一个请求,各个work进程会进行争锁.谁抢到是谁的.需要注意Nginx 所有worker进程协同工作的关键(共享内存). [accept_mutex的介绍] 当 ...

  9. mysql索引类型:FULLTEXT、NORMAL、SPATIAL、UNIQUE的详细介绍(转)

    Normal 普通索引 表示普通索引,大多数情况下都可以使用 Unique 唯一索引 表示唯一的,不允许重复的索引,如果该字段信息保证不会重复例如身份证号用作索引时,可设置为unique 约束唯一标识 ...

  10. CF1278B-A and B-(简单数学)

    https://vjudge.net/problem/CodeForces-1278B 题意:给两个数a和b,有一种操作:第i次操作任选其中一个数加或减i:如第1次操作可以任选其中一个数加1或减1,第 ...