Ubuntu16.04 安装多个python版本

简介: Ubuntu16.04 安装多个python版本

1 下载安装python3.8

2 修改python3默认指向

3 无法打开终端解决方案

3 python版本的卸载

4 python多版本管理

5 升级pip3/pip


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/ppa
sudo apt-get update
sudo apt-get install python3.8

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

cd /usr/bin && ll

查看


image.png

2 修改python3默认指向

sudo rm python3
sudo ln -s python3.8 python3

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

$ python3 --version
python3.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.8
sudo mv _gi_cairo.cpython-35m-x86_64-linux-gnu.so  _gi_cairo.cpython-38m-x86_64-linux-gnu.so
sudo 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


image.png

问题解决。

3 python版本的卸载

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

4 python多版本管理

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

将 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 python3
There 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 mode
Press <enter> to keep the current choice[*], or type selection number: 2

5 升级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.py
sudo python3 get-pip.py --force-reinstall


目录
相关文章
|
2月前
|
人工智能 数据安全/隐私保护 Python
小红书图文生成器,小红书AI图文生成工具,python版本软件
Pillow库自动生成符合平台尺寸要求的配图7;3)利用Playwright实现自动化发布流程6。
|
1月前
|
Ubuntu Linux 索引
Centos 7、Debian及Ubuntu系统中安装和验证tree命令的指南。
通过上述步骤,我们可以在CentOS 7、Debian和Ubuntu系统中安装并验证 `tree`命令。在命令行界面中执行安装命令,然后通过版本检查确认安装成功。这保证了在多个平台上 `tree`命令的一致性和可用性,使得用户无论在哪种Linux发行版上都能使用此工具浏览目录结构。
220 78
|
2月前
|
存储 Ubuntu 安全
在Ubuntu 16.04上安装openjdk-6/7/8-jdk的步骤
在整个安装过程中,你可能需要管理员权限,因此你可能要使用 `sudo` 来获取必要的权限。记得做完每一个步骤后,都要检查输出,以确保没有发生错误,并且每项操作都成功完成。如果在安装过程中遇到问题,查看 `/var/log/` 下的日志文件对于问题的解决可能是有帮助的。
127 21
|
2月前
|
IDE Ubuntu Java
在Ubuntu18.04安装兼容JDK 8的Eclipse集成开发环境的指南。
完成以上步骤后,您将在Ubuntu 18.04系统上成功安装并配置了Eclipse IDE,它将与JDK 8兼容,可以开始进行Java开发工作。如果遇到任何问题,请确保每一步骤都正确执行,并检查是否所有路径都与您的具体情况相匹配。
105 11
|
2月前
|
API 数据安全/隐私保护 开发者
企业微信自动加好友软件,导入手机号批量添加微信好友,python版本源码分享
代码展示了企业微信官方API的合规使用方式,包括获取access_token、查询部门列表和创建用户等功能
|
2月前
|
Kubernetes 负载均衡 Ubuntu
Kubernetes安装详细教程 Ubuntu版
本教程基于Ubuntu 22.04配置Kubernetes环境,涵盖依赖安装、swap关闭、内核参数调整、containerd与Kubernetes组件安装、集群初始化及CNI网络插件部署等内容,并提供常见问题处理方法和相关工具推荐。
|
1月前
|
Ubuntu 开发工具
Ubuntu 22.04 aarch64版本操作系统下编译ZLMediaKit教程
通过上述步骤,你可以在Ubuntu 22.04 aarch64版本上成功编译ZLMediaKit,这是一个相对简单而直接的过程,但可能会遇到一些需要根据具体系统环境和要求调整的地方。
375 0
|
1月前
|
Ubuntu Java Android开发
在Ubuntu 18.04上安装与JDK 8兼容的Eclipse版本的步骤。
安装过程结束后,您就可以开始使用Eclipse来开发您的Java项目了,并且确保它与JDK 8兼容无误。这个过程涉及的是一个基本的安装流程,针对使用Java 8的用户,Eclipse的其他配置和插件安装根据个人开发环境和需求来定制。
135 0