参考

安装 python3 时,不要覆盖原环境的 python2。因为环境中有些程序是依赖 2 的,比如 yum。直接覆盖是会影响环境的。

最好的是编译安装 python3,执行指令是用 python3 作为指令区别 python(2) 来下指令。

1. 安装依赖

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

如果这一步没做好,后面会对 pip install 安装功能造成影响

2. 下载安装 python3

安装位置看个人喜好,这里假设 /usr/local/python3

  • 下载
# 这个指令执行位置即下载位置
wget https://www.python.org/ftp/python/3.6.1/Python-3.6.1.tgz
  • 解压
tar -zxvf Python-3.6.1.tgz

3. 编译安装

进入解压后目录

cd Python-3.6.1

编译安装,--prefix后路径为安装位置

./configure --prefix=/usr/local/python3
make && make install

如果后面执行时出行错误,显示缺少某个模块时,要重新执行【编译安装】步骤

4. 建立 python3 的软链

这一步是为了区分 python3 和 python

如果不执行这一步,后面下 python3 指令时,将报错:python3: command not found

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

假如重新编译安装 python3 换了安装位置,安装完了之后执行这步出现错误:ln: python3: file exit

则执行:

ln -snf /usr/local/python3/bin/python3 /usr/bin/python3

参数 -snf 表示覆盖

5. 将/usr/local/python3/bin加入PATH

此文件开机执行

# vim ~/.bash_profile

# .bash_profile
# Get the aliases and functions
if [ -f ~/.bashrc ]; then
. ~/.bashrc
fi
# User specific environment and startup programs
PATH=$PATH:$HOME/bin:/usr/local/python3/bin
export PATH

编译文件

source ~/.bash_profile

安装完成,检查 python3, pip3 执行是否有效。

如果 pip3 无效,创建一下软链接:

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

6. 解决缺少模块报错

检查 pip3 是否能正常安装模块:

pip3 install paramiko

最常出现的报错是缺少 ssl 模块。

pip is configured with locations that require TLS/SSL, however the ssl module in Python is not available.

这是由于前面安装依赖环境的时候没做,缺少 ssl 依赖。

那就补安装这个模块

yum install openssl
yum install openssl-devel

安装完了之后要重新执行第 3 步编译安装 python3 环境,将新安装的模块兼容进 python3 的安装环境中

cd Python-3.6.1
./configure --prefix=/usr/local/python3
make && make install

参考原文中还有缺少setuptools模块和安装pip模块的步骤,有遇到相关问题的点进去看就行。

基本思路:

看它的报错里面写的缺少的是什么模块,就去补安装什么模块。

安装完了要重新执行第 3 步编译安装 python3 环境,将新安装的模块兼容进 python3 的安装环境中

新环境安装 python3的更多相关文章

  1. Linux环境安装python3

    linux 安装Python3 1.python下载 请在终端输入如下命令: cd /home wget http://cdn.npm.taobao.org/dist/python/3.6.5/Pyt ...

  2. CentOS环境安装python3,pip

    安装python3(编译安装) 1. 下载python安装包到指定目录 cd /usr/local/src 这里的目录如果不存在可以自己建,当然也可以自己放在自己想放的位置,只要等会儿安装的时候能找到 ...

  3. 19c新环境安装补丁(三)_推荐

    本次安装Oracle RAC 19.3 版本 Linux red-hat 7.8  DB安装补丁  RUR 20200717. 本次安装Oracle补丁的方法类似于11G RAC打补丁的方法.  [可 ...

  4. python3.4 + pycharm 环境安装 + pycharm使用

    因个人是windows的环境,所以本文只讲windows环境下的python安装. 作为初用python的盆友,强烈建议只在电脑上装一个python版本就好了,不然就进了各种坑里了. 第一步:下载和安 ...

  5. 环境准备—之—linux下安装python3和pip3

    转自 上海悠悠 https://www.cnblogs.com/yoyoketang/p/10195102.html 前言 centos7 自带有 python,但是却是 python2 版本的 py ...

  6. Linux学习5-CentOS安装Python3.6环境和pip3

    前言 centos7 自带有 python,但是却是 python2 版本的 python,如果你想安装个python3怎么办呢? 如果直接删除python2的话,可能会引起其他的问题,因为有些东西是 ...

  7. Linux服务器超简单安装Python3环境、Ipython、Jupyter、virtualenv、virtualenvwrapper教程全在这了

    一.网卡配置 vim /etc/sysconfig/network-scripts/ifcfg-ens33 ONBOOT='yes' 二.更换Linux语言环境 1.修改配置文件 vim /etc/l ...

  8. Centos7环境下安装python3.6.4 并与python2共存

    最近安装了新系统centos7,本身自带python2.7,但是由于需要使用python3 来运行一些应用,所以想到在centos环境下安装python3,并保证其和python2 可以共存. 步骤如 ...

  9. windows7 下安装python3.6开发环境

    所有的软件都放在百度云盘里: 链接: https://pan.baidu.com/s/1rux8sDK9thhbZ1qjwQg6kA 密码: iq4c 1. 安装python3.6.5 安装的时候要把 ...

随机推荐

  1. [Xcode 实际操作]七、文件与数据-(7 )使用UserDefaults检测App是否首次运行

    目录:[Swift]Xcode实际操作 本文将演示UserDefaults的使用,它常被用于存储程序的配置数据. 当关闭程序之后,再次打开程序时,之前存储的数据依然可以从UserDefaults里读取 ...

  2. python 之 软件开发目录规范 、logging模块

    6.4 软件开发目录规范 软件(例如:ATM)目录应该包含: 文件名 存放 备注 bin start.py,用于起动程序   core src.py,程序核心功能代码   conf settings. ...

  3. redids

    Redis 地理位置(geo) Redis 键(key) Redis 字符串(String) Redis 哈希(Hash) Redis 列表(List) Redis 集合(Set) Redis 有序集 ...

  4. MySQL表完整性约束

    =======MySQL表完整性约束====== 目录: 一.介绍 二.not null 与 default 三.unique 四.primary key 五.auto_increment 六.for ...

  5. Django配置文件解释

    """Django settings for first project. Generated by 'django-admin startproject' using ...

  6. Python3.x下Selenium3.x之安装篇

    环境安装 Python环境: 首先我们需要安装Python语言,这个不过多详述,仅给出建议 Python2.x目前支持的第三方库类较多 Python3.x是修改了许多2.x版本的不足,但支持的库类较少 ...

  7. Codeforces Round #432 (Div. 2, based on IndiaHacks Final Round 2017) D

    Arpa has found a list containing n numbers. He calls a list bad if and only if it is not empty and g ...

  8. Restful 1 -- REST、DRF(View源码解读、APIView源码解读)及框架实现

    一.REST 1.什么是编程? 数据结构和算法的结合 2.什么是REST? - url用来唯一定位资源,http请求方式来区分用户行为 首先回顾我们曾经做过的图书管理系统,我们是这样设计url的,如下 ...

  9. F. Coprime Subsequences 莫比乌斯反演

    http://codeforces.com/contest/803/problem/F 这题正面做了一发dp dp[j]表示产生gcd = j的时候的方案总数. 然后稳稳地超时. 考虑容斥. 总答案数 ...

  10. ASPX1

    表单提交 <!--表单:收集用户的数据.---> <form method="post" action="AddInfo.ashx"> ...