Ubuntu16.04中python2.7、python3.5和python3.7共存

Ubuntu中默认安装了python2.7和python3.5,由于一次测试,我需要python3.7的环境,所以进行了安装,其中涉及到:

python源码安装
软链接的增添、删除修改
对应版本的pip安装和查看
一、python源码安装
1、下载源码
在官网中下载python3.7的源码,链接:https://www.python.org/downloads/release/python-371/

下载之后解压:

sudo tar -zxvf Python-3.7.1.tgz

2、安装依赖
在3.7中,ctypes模块依赖包 libffi-dev .如果没有,安装会报错:ModuleNotFoundError: No module named '_ctypes'

 sudo apt-get install libffi-dev

3、配置
cd Python-3.7.1

sudo ./configure --prefix=/opt/python3.7

4、编译
 sudo  make

5、安装
make install

在安装步骤中可能会出现zipimport.ZipimportError错误,执行命令:

sudo apt-get install libbz2-dev libgdbm-dev liblzma-dev libreadline-dev libsqlite3-dev libssl-dev tcl-dev tk-dev dpkg-dev

之后再次执行make install即可。

6、创建软连接
为了方便操作,我们需要把下载目录下的python3.7创建软链接到系统目录下:

sudo ln -s /opt/python3.7/bin/python3.7 /usr/bin/python3.7

python -m pip install -U --force-reinstall pip

这之后安装就成功了:

二、软链接的增添、删除修改
软链接类似于Windows下的快捷键。

增添:

sudo ln -s <目标目录> <软链接地址>

删除:

sudo rm -rf <软链接地址>

修改:

sudo ln -snf <目标目录> <软链接地址>

三、对应版本的pip安装和查看
这个我迷惑了好久,因为要在python3.7下安装一个库,安装完了之后还是一直提示没有这个库,我:烦躁.jpg

后来发现安装在了别的版本下面,但是我又不知道怎么看、怎么指定,就……一团乱。

----------------烦躁的分界线-------让我梳理一下-------

首先需要注意的是,在Ubuntu下使用命令apt-get install pip3,会默认安装到python3.5上

如果想要安装python3.7的pip,需要在官网上下载源码。

首先下载setuptools,链接:https://pypi.org/project/setuptools/#files

然后下载pip的源码:https://pypi.org/project/pip/#files

之后执行命令:

sudo tar -zxvf setuptools-56.0.0.tar.gz
cd setuptools-56.0.0
sudo python3.7 setup.py build
sudo python3.7 setup.py install

sudo tar -zxvf pip-21.0.1.tar.gz
cd pip-21.0.1
sudo python3.7 setup.py build
sudo python3.7 setup.py install

这就安装好了。进入python3.7的安装目录中查看pip3(python3.7的)是否安装成功:

但从上文可以看出,如果只用pip3,默认的还是python3.5版本的,所以我们需要修改软链接的地址,让python3.7的pip指向系统处:

然后就可以了。

pip的一些操作:

pip/pip3 -V:可以查看该pip对应的是哪个版本的python

pip/pip3 show <库文件>:可以查看该库文件被安装到了哪个版本的python下面;


 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值