python2升级到python3

一、编译安装

1、安装编译包

# 安装基础开发工具包
sudo yum groupinstall "Development Tools" -y
sudo yum install -y make gcc openssl-devel bzip2-devel libffi-devel zlib-devel

# 安装额外的依赖库
sudo yum install -y readline-devel sqlite-devel xz-devel tk-devel

注:关键依赖包说明

包名作用
gcc C 编译器(必须)
make 构建工具(必须)
openssl-devel SSL/TLS 支持(pip 等需要)
bzip2-devel bz2 模块支持
libffi-devel ctypes 模块支持
zlib-devel 压缩库支持
readline-devel 交互式 Python 命令行增强
sqlite-devel SQLite 数据库支持
xz-devel LZMA 压缩支持
tk-devel Tkinter GUI 支持

2、下载Python3安装包:

# 进入 /usr/src 目录(可选)
cd /usr/src

# 下载 Python 3(以 Python 3.10 为例)
sudo curl -O https://www.python.org/ftp/python/3.10.13/Python-3.10.13.tar.xz
sudo tar -xf Python-3.10.13.tar.xz

python2: mkdir /usr/local/Python3

cd Python-3.10.13

3、编译安装

./configure --prefix=/usr/local/Python3

make j4

make install

4、修改老版本python链接

mv /usr/bin/python  /usr/bin/python_2.7

5、建立新版本python软连接

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

6、检查版本

python -V

7、修改会影响到yum

解决方法:修改两处

vi /usr/bin/yum 

vi /usr/libexec/urlgrabber-ext-down

将第一行 #! usr/bin/python改为#! usr/bin/python2.x(x为你原来的python的版本)

二、安装pip(编译安装会自动安装pip)

1、下载

wget https://bootstrap.pypa.io/get-pip.py

2、安装(python版本至少得是>=3.6)

python  get-pip.py

3、查找pip安装路径

find / -name pip

4、将pip添加到系统命令

ln -s /usr/local/Python3/bin/pip   /usr/bin/pip

三、使用yum源安装

版本受限(centos7 中只到 3.6)

1、安装 epel 和 epel-release 工具

rpm -Uvh https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
yum install epel-release

2、查看库里支持的版本

yum list | grep python3 | more

3、安装

yum install python36

4、测试

#python3 -V
Python 3.6.8

#pip3 -V
pip 9.0.3 from /usr/lib/python3.6/site-packages (python 3.6)

四、py2 和 py3共存

1、安装必要的依赖

sudo yum groupinstall -y "Development Tools"
sudo yum install -y openssl-devel bzip2-devel libffi-devel

2、下载源码

cd /usr/src
sudo wget https://www.python.org/ftp/python/3.10.0/Python-3.10.0.tgz

3、解压源码

sudo tar xzf Python-3.10.0.tgz
cd Python-3.10.0

4、配置、编译

sudo ./configure  --enable-optimizations
sudo make altinstall

注意:

--enable-optimizations:这个选项启用额外的优化,对于 Python 来说,它会启用 PGO(Profile Guided Optimization),以提高最终生成的 Python 可执行文件的性能。

altinstall :是为了避免覆盖系统默认的Python版本。

5、更新系统的Python指向到3.10版本(可选):

sudo ln -s /usr/local/bin/python3.10 /usr/local/bin/python3
sudo ln -s /usr/local/bin/pip3.10 /usr/local/bin/pip3

6、验证版本

python3  --version
Python 3.10.0

pip3 -V
pip 21.2.3 from /usr/local/lib/python3.10/site-packages/pip (python 3.10)

五、使用 Miniconda

直接运行的是最新版本

wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh
bash Miniconda3-latest-Linux-x86_64.sh

# 创建 Python 3.10.13 环境
conda create -n py310 python=3.10.13
conda activate py310

# 验证
python --version

  

 

posted @ 2020-06-24 14:44  凡人半睁眼  阅读(785)  评论(0)    收藏  举报