在CentOS7上默认是安装Python2,但是现在很多程序默认都是需要Python3才能正常运行。

如果使用系统的Python环境,在系统更新的时候,更新包有可能破坏依赖。

最好的方法就是编译安装一个Python3,然后使用虚拟环境去运行我们的Python程序。

之所以使用虚拟环境就是为了让我们安装的Python3可以被多个程序使用,安装包又不会互相冲突。

编译安装

编译的时候,需要安装一些依赖包

#!/bin/bash
VERSION='3.10.0'

yum -y install xz tar gcc make tk-devel wget sqlite-devel zlib-devel  readline-devel openssl-devel curl-devel tk-devel gdbm-devel xz-devel bzip2-devel libffi-devel

cd /root/

wget -c https://mirrors.huaweicloud.com/python/${VERSION}/Python-${VERSION}.tgz

tar xvf Python-${VERSION}.tar.xz

cd Python-${VERSION}

./configure --prefix=/opt/python3

make

make install

echo 'export PATH=/opt/python3/bin:$PATH' >>/etc/profile

使用测试

source /etc/profile
python3 -V

设置镜像源

mkdir ~/.pip

cat > ~/.pip/pip.conf <<EOF
[global]
index-url = https://repo.huaweicloud.com/repository/pypi/simple
trusted-host = repo.huaweicloud.com
timeout = 120
EOF

创建虚拟环境

/opt/python3/bin/python3 -m pip install virtualenv
cd /opt/
/opt/python3/bin/python3 -m virtualenv mypyhton

这里创建的mypython就是我们的虚拟环境,使用的时候,可以使用activate模式,也可以指定路径的python执行文件

source /opt/mypython/bin/activate
python -m pip list 

或者

/opt/mypython/bin/python -m pip list