我是靠谱客的博主 紧张摩托,这篇文章主要介绍ubuntu 安装多个版本的python,并使用jupyter notebook访问多个python版本,现在分享给大家,希望可以做个参考。

本人使用的ubntu 版本为16.04,系统自带2.7.2和3.5.2版本的python,但是后来逐渐发现有些库已经不支持3.5的python版本。因此需要我们升级python版本。但是升级python版本有可能会导致系统无法正常运行,因为系统可能依赖于python3.5和2.7的一些库。
因此我再安装一个新的python版本。至于juoyter notebook,我们可以通过切换内核的方式使用不同python版本。

一、安装新版本的python
更新安装步骤:
1. 先update一下

复制代码
1
2
sudo apt update

2. 安装依赖库

复制代码
1
2
sudo apt-get install zlib1g-dev libbz2-dev libssl-dev libncurses5-dev libsqlite3-dev libreadline-dev tk-dev libgdbm-dev libdb-dev libpcap-dev xz-utils libexpat1-dev liblzma-dev libffi-dev libc6-dev

3. 下载Python3安装包
从python官网下载linux版本的压缩包。
在这里插入图片描述
或者python下载库里面下载对应的版本,我这里是Ubuntu系统要安装,下载后缀为.tgz的那个压缩包即可
在这里插入图片描述
也可直接在终端中使用命令下载:

复制代码
1
2
wget 'https://www.python.org/ftp/python/3.8.2/Python-3.8.2.tgz'

4.解压安装

复制代码
1
2
3
4
5
6
7
8
9
tar zxvf Python-3.8.2.tgz #解压 cd Python-3.8.2 sudo mkdir -p /usr/local/python38 #建立安装目录 ##编译安装 #后面加上 --enable-optimizations 会自动安装pip3及优化配置 ./configure --prefix=/usr/local/python38 --enable-optimizations make sudo make install

5.为新的python建立软链接
想要系统可以检测到新安装的python,那么还必须为安装的python建立软链接。

复制代码
1
2
3
4
5
6
7
8
9
10
11
12
# 删除软连接,如果需要删除原有的python,那么就删除,否则不要删除,为新的python取不同的软链接名字即可。 #sudo rm -rf /usr/bin/python3 #sudo rm -rf /usr/bin/pip3 #新建软连接 #添加先版本的python4的软链接,好像软链接的名字只能取python3,4,5这种,取python38这种名字,在终端输入python38会报错。 sudo ln -s /usr/local/python38/bin/python3.8 /usr/bin/python4 #添加 pip4 的软链接 sudo ln -s /usr/local/python38/bin/pip3.8 /usr/bin/pip4 #检测版本: python4 -V pip4-V

现在可以打开一个终端,输入命令python4,就可以看到新安装的python。
6.设置python的优先级便于切换python默认版本

复制代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
执行如下指令对python版本动态配置(注意python 3.8赋予的权重要小一些,否则不一定能从高版本切换至低版本): # 如果以前配置了python,则删除之 sudo update-alternatives --remove-all python # python2赋予权重50 sudo update-alternatives --install /usr/bin/python python /usr/bin/python2 50 # python3.5赋予权重30 sudo update-alternatives --install /usr/bin/python python /usr/bin/python3 30 # python3.8赋予权重20 sudo update-alternatives --install /usr/bin/python python /usr/bin/python4 20 #动态切换当前使用的版本,在出现的界面中根据需要选择1或者2,3, #即可动态选择使用python 2.7还是python 3.5还是python3.8。 sudo update-alternatives --config python

类似图
在这里插入图片描述
查看当前python版本

复制代码
1
2
python -V

还有另一种安装方式。

复制代码
1
2
3
4
5
6
7
8
9
10
11
12
# 安装python sudo add-apt-repository ppa:deadsnakes/ppa sudo apt-get update sudo apt-get install python3.8 # 设置命令python的版本优先级(若安装了其他版本的Python可以类似地设置) sudo update-alternatives --install /usr/bin/python python /usr/bin/python3.8.2 # 如果只需要一个版本的python,可以不用执行上步,直接创建软连接 # sudo ln -s python3.6 /usr/bin/python # 更改python版本 sudo update-alternatives --config python

二.安装jupyter kernel内核
现在来熟悉一下jupyter对不同python版本的内核配置过程.
1.安装ipython

复制代码
1
2
sudo pip4 install ipython==5.3.0

2.下载对应版本的python内核版本

复制代码
1
2
sudo pip4 install ipykernel

3.安装对应版本的python内核版本

复制代码
1
2
3
4
5
6
python4 -m ipykernel install --user ###应用python3内核,这个命令会把原来的内核顶替掉 #推荐使用这个命令 python4 -m ipykernel install --user --name python4 --display-name "Python3.8" #查看可使用的内核 jupyter kernelspec list

如图:
在这里插入图片描述
打开/home/xiaohaipeng/.local/share/jupyter/kernels/python4,文件可以看到如下内容:

复制代码
1
2
3
4
5
6
7
8
9
10
11
12
{ "argv": [ "/usr/bin/python4", #对应的软链接 "-m", "ipykernel_launcher", "-f", "{connection_file}" ], "display_name": "Python 3.8",#jupyter上看到的内核名字 "language": "python" }

可以手动更改这个文件的display_name。
最后打开一个jupyter ,如图
在这里插入图片描述

如果在jupter下出现如下错误:
在这里插入图片描述
那是因为ipython版本过低
运行

复制代码
1
2
sudo pip4 install --upgrade ipython

参考:Ubuntu 升级python3为更高版本【已实测】
Ubuntu16.04安装python3.7及相应的pip(看评论比较有用)
Ubuntu16.04最小代价解决python多版本管理问题
ubuntu16.04下的jupyter在python2.7和python3.6环境下的安装
Ubuntu Desktop 16.04 LTS 下成功配置Jupyter的两个python内核版本(2.7x,3.5x)
linux – 无法将python3内核添加到Jupyter
Installing the IPython kernel

最后

以上就是紧张摩托最近收集整理的关于ubuntu 安装多个版本的python,并使用jupyter notebook访问多个python版本的全部内容,更多相关ubuntu内容请搜索靠谱客的其他文章。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(53)

评论列表共有 0 条评论

立即
投稿
返回
顶部