【Ubuntu 20.04升级python3.9后终端打不开的bug】

  1. 把Python3.9改为Python3首选项

sudo update-alternatives --install /usr/bin/python3 python3 /usr/bin/python3.9 1

sudo update-alternatives --install /usr/bin/python3 python3 /usr/bin/python3.8 2

sudo update-alternatives --config python3 // 选择3.9相对应的序号

配置软件仓库

sudo add-apt-repository ppa:jonathonf/python-3.9.23

检查系统软件包并安装Python3.9

sudo apt-get update

sudo apt-get install python3.9

把Python3.9改为Python3首选项

sudo update-alternatives --install /usr/bin/python3 python3 /usr/bin/python3.9 1

sudo update-alternatives --install /usr/bin/python3 python3 /usr/bin/python3.8 2

sudo update-alternatives --config python3 // 选择3.9相对应的序号

测试

python3 -V

升级pip3

sudo pip3 install --upgrade pip

安装python3.9的环境

sudo apt-get install python3.9-dev

如果出现终端打不开的情况,继续按如下步骤执行

按ctrl alt f1进入命令行模式

输入gnome-terminal // 查看出现的终端错误

1)错误一:No module named "apt_pkg",解决如下

sudo apt-get remove --purge python-apt

sudo apt-get install python-apt -f

cd /usr/lib/python3/dist-packages/

sudo cp apt_pkg.cpython-38-x86_64-linux-gnu.so apt_pkg.cpython-39-x86_64-linux-gnu.so

2)错误二:ImportError: cannot import name '_gi'

cd /usr/lib/python3/dist-packages/gi/

sudo cp _gi.cpython-38-x86_64-linux-gnu.so _gi.cpython-39-x86_64-linux-gnu.so

sudo cp _gi_cairo.cpython-38-x86_64-linux-gnu.so _gi_cairo.cpython-39-x86_64-linux-gnu.so

按ctrl alt f7进入界面模式,打开终端成功

还有一种情况是cario-dock造成的,将其卸载,卸载办法

sudo apt-get purge cairo-dock cairo-dock-plug-ins && sudo apt-get autoremove

相关推荐
DKunYu16 分钟前
PyTorch入门
人工智能·pytorch·python·深度学习
楼田莉子20 分钟前
C++学习:C++11关于类型的处理
开发语言·c++·后端·学习
ZhengEnCi26 分钟前
Python_哈希表完全指南-从字典到高效查找的 Python 编程利器
python
今天没ID31 分钟前
Python 集合类型全解析:从网球赛事案例看透字符串、列表、元组、集合与字典(1)
python
退役小学生呀41 分钟前
二十三、K8s企业级架构设计及落地
linux·云原生·容器·kubernetes·k8s
小宁爱Python41 分钟前
从零搭建 RAG 智能问答系统 4:从多模态架构到 Milvus 向量存储实践
python·milvus
林炳然42 分钟前
Python-Basic Day-2 python容器(列表、元组)
python
可触的未来,发芽的智生1 小时前
一万个为什么:汉语词性对NLP的作用
python·神经网络·程序人生·自然语言处理
凤山老林1 小时前
SpringBoot 如何实现零拷贝:深度解析零拷贝技术
java·linux·开发语言·arm开发·spring boot·后端
黄毛火烧雪下1 小时前
ruby 、gem 和 cocoapods的联系与区别
开发语言·ruby·cocoapods