所需环境:
操作系统: centos 7
思路:
centos 7 中自带有 python ,因为 yum 依赖自带的 python 2 ,所以不能删除自带的 python ,但可以更改 yum 的依赖指向
操作:
执行 python ,运行的是 python 2.7
执行 python 2 ,还是运行 python 2.7
查看 python 的路径
由上图可见,python 指向的是 python 2 ,python 2 指向的是 python 2.7,所以之前执行 python,python 2 运行的都是 python 2.7;把 python 指向我们安装的 python 3 就可以了
执行 yum -y install make zlib zlib-devel gcc-c++ libtool openssl openssldevel 安装依赖
把安装包上传到 opt 目录中,并用 tar -zxvf Python-3.8.1.tgz 命令解压
进入解压后的目录后,用 mkdir -p /usr/local/python3 命令创建 python3 文件夹,再用 ./configure --prefix=/usr/local/python3 命令指定安装目录,再执行 make 及 make install 命令编译安装
安装完成,也成功安装了 pip、setuptools
进入到 /usr/bin/ 目录下,把 python 改名成 python.bak
进入 python 3 安装目录下的 bin 目录,建立 python 3 软链
ln -s /usr/local/python3/bin/python3.8 /usr/bin/python3
ln -s /usr/local/python3/bin/python3.8 /usr/bin/python
验证 python ,python3 的指向
成功
查看 python 版本
pip3 未找到,执行 vim /etc/profile 命令添加环境变量
# python3
export PYTHON3_HOME=/usr/local/python3
export PATH=$PYTHON3_HOME/bin:$PATH
保存退出后,执行 source /etc/profile 命令使其立即生效,在执行 pip3 -V 命令
执行 pip3 install pytest 命令安装 pytest
提示 pip 版本过低,执行 pip3 install --upgrade pip 命令对 pip 升级
成功,最后修改 yum 的 python 指向,因为 yum 依赖于 python2,执行 ll /usr/bin/yum* 命令
编辑这些查到的文件,将 #! /usr/bin/python 改为 #! /usr/bin/python2
在把 urlgrabber-ext-down 文件的 #! /usr/bin/python 改为 #! /usr/bin/python2 ,执行 vim /usr/libexec/urlgrabber-ext-down 命令
至此安装完成