起因:写Python时报错:
TypeError: unsupported operand type(s) for |=: ‘dict’ and ‘dict’
原因:python3.9 支持对 dict 类型使用 |, 而较老的版本不支持
小编这个ubuntu20.04环境是在wsl2下的,本质上与纯linux环境配置是一样的
于是更新python,截止2023.3.29,Python稳定版是到10.10
下面记录操作:
1、老版本3.8.10
2、查看已有Python版本
cd /usr/bin
查看一下已经下载的Python版本
ls -al python*
ps:小编截这图时已经下完了3.10,但软链接还没改
可以看到第一行说明Python默认用的是3.8版本
3、安装最新的Python版本
指令如下,下面都是在管理员权限下进行的,省略了sudo:
(1)日常update一下,再安装Python环境所需的依赖
apt update
apt install build-essential zlib1g-dev libncurses5-dev libgdbm-dev libnss3-dev libssl-dev libreadline-dev libffi-dev libsqlite3-dev wget libbz2-dev
(2)安装包下载
官网下载
wget https://www.python.org/ftp/python/3.10.10/Python-3.10.10.tgz
如果觉得国外网站太慢,有淘宝镜像
wget https://registry.npmmirror.com/-/binary/python/3.10.10/Python-3.10.10.tgz
(3)解压并进入子目录
tar -xf Python-3.10.10.tgz
cd Python-3.10.10
(4)规定即将安装的 Python 3.10.10 安装在/usr/python目录并执行
make -j 12 的作用就是并行编译12个指令,就是加速了
./configure --prefix=/usr/python
make -j 12
之后再执行
make altinstall
altinstall跳过创建python链接和手册页链接的操作。
如果使用make install,在系统中将会有两个不同版本的Python在/usr/bin/目录中,这将会导致很多问题。
(5)建立软链接
若不建立软链接,还是3.8版本
-f 是覆盖 ,-s 是软连接
ln -fs /usr/python/bin/python3.10 /usr/bin/python
ln -fs /usr/python/bin/pip3.10 /usr/bin/pip
(6)检查一下
再在当前目录下执行
ls -al python*
可以看到更改了文章来源:https://www.toymoban.com/news/detail-454976.html
emm,没毛病,就这样,如果要回到以前的版本,改一下软连接即可
或是要特定版本,先下载,依照上面的流程,再改软连接也一样的文章来源地址https://www.toymoban.com/news/detail-454976.html
到了这里,关于Ubuntu20.04下更新系统Python版本的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!