欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

Python第五十一天 python2升级为python3

程序员文章站 2022-05-29 08:12:05
Python第五十一天 python2升级为python3 公司使用的生产环境系统是centos7,所以这里以centos7系统为基础,讲解将python2升级为python3的方法 centos7系统默认已经安装了python2.7,但是python2的生命周期到2020年1月1日就会终结,在这个 ......

python第五十一天  python2升级为python3

 

 

公司使用的生产环境系统是centos7,所以这里以centos7系统为基础,讲解将python2升级为python3的方法

centos7系统默认已经安装了python2.7,但是python2的生命周期到2020年1月1日就会终结,在这个时间点之后出现的任何问题都不会再维护

所以将现有用python2开发的系统升级为python3成为当务之急

官方文档描述如下

deprecation: python 2.7 will reach the end of its life on january 1st, 2020. please upgrade your python as python 2.7 won't be maintained after that date. a future version of pip will drop support for python 2.7.

 

那么,我们开始对系统的python版本进行升级,升级非常简单

1. 安装python依赖包

yum groupinstall "development tools" -y
yum install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gdbm-devel db4-devel libpcap-devel xz-devel –y

 

 

2. 使用源码方式编译安装python3

cd /usr/local/src
# 下载python3.7.5源码包
wget -c https://www.python.org/ftp/python/3.7.5/python-3.7.5.tgz
# 解压源码包
tar -zxvf python-3.7.5.tgz
cd python-3.7.5
# 编译安装
./configure --prefix=/usr/local --enable-shared && make && make install

echo /usr/local/lib >> /etc/ld.so.conf.d/local.conf
# 在缓存文件/etc/ld.so.cache中追加进指定目录下的共享库
ldconfig
# 对python3可执行文件建软连接
ln -s /usr/local/bin/python3 /usr/bin/python3

 

 

3. 测试安装第三方包,python3的源码包里已经包含pip包管理工具,不需要再额外安装,也就是不需要再yum install -y  python-pip 

pip3 install pandas

 

如果上面三个步骤都没有报错,就相当于升级成功,现在系统里面是 python2和python3并存

 

有朋友会问,python2和python3并存,那怎么调用python3,怎么调用python2,依赖python2的系统软件还能用吗,比如 yum

实际上,安装了python3之后,对系统原来的python2环境一点影响都没有,依赖python2的系统软件也能正常使用

 

通过查看/usr/bin路径下的python可执行文件得知,在系统安装好之后,默认已经存在/usr/bin/python、 /usr/bin/python2、 /usr/bin/python2.7等三个python2的可执行文件

只要不动它们,对python2环境是没有影响的,然后在安装完python3之后,做了一个软链接, /usr/bin/python3 -> /usr/local/bin/python3

ll /usr/bin/py*
-rwxr-xr-x. 1 root root 78 jul 13 2018 /usr/bin/pydoc
lrwxrwxrwx. 1 root root 7 nov 15 2018 /usr/bin/python -> python2
lrwxrwxrwx. 1 root root 9 nov 15 2018 /usr/bin/python2 -> python2.7
-rwxr-xr-x. 1 root root 7216 jul 13 2018 /usr/bin/python2.7
lrwxrwxrwx 1 root root 22 dec 29 18:13 /usr/bin/python3 -> /usr/local/bin/python3

 以后如果需要用python3执行脚本,只需要

python3  脚本文件名.py

要用pip安装python3的第三方包,只需要

pip3 install  第三方包名

 

其他的命令行参数,语法跟python2都一样,升级python3就是这么简单

 

 

如有不对的地方,欢迎大家拍砖o(∩_∩)o 

本文版权归作者所有,未经作者同意不得转载。