Python2和Python3共存

1、应用场景

Linux自带的Python2仍然原封不动,使用另外一套Python3编程。yum 使用的仍然是Python2;

2、需准备的软件包

这三个压缩文件可放在同一个目录下(比如家目录~)

Python-3.5.2.tgz
pip-8.1.2.tar.gz
setuptools-24.0.2.tar.gz

3、解压和安装

(1)解压Python-3.5.2.tgz

解压:tar -zxvf Python-3.5.2.tgz
进入解压目录: cd Python-3.5.2
创建安装目录: mkdir /usr/local/python3.5.2
编译: ./configure prefix=/usr/local/python3.5.2
安装: make && make install
创建软链接:ln -s /usr/local/python3.5.2/bin/python3.5  /usr/bin/python3

以上步骤一般不会出错,但在安装pip3时会出现一些报错,需注意。

(2)解压安装setuptools-24.0.2.tar.gz

tar -zxvf setuptools-24.0.2.tar.gz
cd setuptools-24.0.2
python3 setup.py install

此时会出现RuntimeError: Compression requires the (missing) zlib module 报错。
解决方法,进入Python安装包,重新编译一次:

cd Python-3.5.2
make && make install
cd setuptools-24.0.2
python3 setup.py install

(3)解压安装pip-8.1.2.tar.gz

tar -zxvf pip-8.1.2.tar.gz
cd pip-8.1.2
python3 setup.py install

此时会出现ImportError: cannot import name HTTPSHandle 报错

解决方法

yum  -y install openssl openssl-devel
cd Python-3.5.2
make && make install
cd pip-8.1.2
python3 setup.py install
建立软链接:ln -s /usr/local/python3.5.2/bin/pip3 /usr/bin/pip3

注意:步骤2,3 顺序不能相反,否则会报错。当然报错也无所谓,最终会告诉你现状setuptools,再装pip3。