您当前的位置:首页 > IT编程 > python
| C语言 | Java | VB | VC | python | Android | TensorFlow | C++ | oracle | 学术与代码 | cnn卷积神经网络 | gnn | 图像修复 | Keras | 数据集 | Neo4j | 自然语言处理 | 深度学习 | 医学CAD | 医学影像 | 超参数 | pointnet | pytorch | 异常检测 | Transformers | 情感分类 | 知识图谱 |

自学教程:Ubuntu16.04 安装多个python版本的问题及解决方法

51自学网 2021-10-30 22:14:48
  python
这篇教程Ubuntu16.04 安装多个python版本的问题及解决方法写得很实用,希望能帮到您。

Ubuntu16.04自带python2.7与python3.5,某个项目编译却要求python版本大于等于3.7,遂考虑在原系统基础上再安装python3.8。

1 下载安装python3.8

Ubuntu 官方 apt 库中还未收录 python 3.8,因此添加 deadsnakes PPA 源安装python3.8,否则会出现以下错误

错误1

E: 无法定位软件包 python3.8
E: 无法按照 glob ‘python3.8' 找到任何软件包
E: 无法按照正则表达式 python3.8 找到任何软件包

解决方法:运行以下指令安装python3.8

sudo add-apt-repository ppa:deadsnakes/ppasudo apt-get updatesudo apt-get install python3.8

此时python3版本还是指向python3.5,可以输入

cd /usr/bin && ll

查看

在这里插入图片描述

2 修改python3默认指向

sudo rm python3sudo ln -s python3.8 python3

查看python版本验证修改成功:

$ python3 --versionpython3.8.9

3 无法打开终端解决方案

按1、2步骤安装完python3后,一般无法打开终端
错误2

$ gnome-terminal
Traceback (most recent call last):
  File "/usr/bin/gnome-terminal", line 9, in <module>
    from gi.repository import GLib, Gio
  File "/usr/lib/python3/dist-packages/gi/__init__.py", line 42, in <module>
    from . import _gi
ImportError: cannot import name '_gi'

解决方法:

cd /usr/lib/python3/dist-packages/gi/# 下面的35 改成38 表示从py3.5改到py3.8sudo mv _gi_cairo.cpython-35m-x86_64-linux-gnu.so  _gi_cairo.cpython-38m-x86_64-linux-gnu.sosudo mv _gi.cpython-35m-x86_64-linux-gnu.so _gi.cpython-38m-x86_64-linux-gnu.so

接下来修改

sudo gedit /usr/bin/gnome-terminal

将python3改为python

在这里插入图片描述

问题解决。

4 python版本的卸载

sudo apt remove python3.8sudo apt autoremove python3.8

5 python多版本管理

参考https://www.jb51.net/article/221437.htm,值得注意,仅按该博文的方式配置仍会打不开终端,建议先按照本文方式配置后再添加管理。

将 python 各版本添加到 update-alternatives

$ which python3.8/usr/bin/python3.8$ sudo update-alternatives --install /usr/bin/python3 python3 /usr/bin/python3.8 1$ which python3.5/usr/bin/python3.5$ sudo update-alternatives --install /usr/bin/python3 python3 /usr/bin/python3.5 2

通过下面配置切换版本

$ sudo update-alternatives --config python3There are 2 choices for the alternative python3 (providing /usr/bin/python3).  Selection    Path                Priority   Status------------------------------------------------------------* 0            /usr/bin/python3.5   2         auto mode  1            /usr/bin/python3.5   2         manual mode  2            /usr/bin/python3.8   1         manual modePress <enter> to keep the current choice[*], or type selection number: 2

6 升级pip3/pip

对于初次安装python的Ubuntu系统而言,pip等级较低,这种情况下进行pip install高版本库可能会出现一系列的问题,例如:

错误3:AttributeError: module ‘platform' has no attribute ‘linux_distribution'
解决方法:对pip版本进行升级

curl https://bootstrap.pypa.io/get-pip.py -o get-pip.pysudo python3 get-pip.py --force-reinstall

到此这篇关于Ubuntu16.04 安装多个python版本的文章就介绍到这了,更多相关Ubuntu16.04 安装python内容请搜索51zixue.net以前的文章或继续浏览下面的相关文章希望大家以后多多支持51zixue.net!


OpenCV半小时掌握基本操作之圆圈检测
Ubuntu下安装卸载python3.8的过程
万事OK自学网:51自学网_软件自学网_CAD自学网自学excel、自学PS、自学CAD、自学C语言、自学css3实例,是一个通过网络自主学习工作技能的自学平台,网友喜欢的软件自学网站。