Python3.12/3.13运行pip报错:找不到distutils模块怎么办?
解决Ubuntu 22.04上Python3.12/3.13的pip
distutils缺失问题 问题根源
Python3.12+官方已移除distutils模块,但Ubuntu通过apt分发的Python3.12/3.13包并未默认包含distutils的替代依赖,且配套的pip版本仍依赖该模块,导致无法正常运行pip。重装Python无效是因为apt安装的Python本身不附带distutils,重装不会自动补全这个依赖。
解决方案
按以下步骤操作:
安装对应Python版本的
distutils系统包:sudo apt update && sudo apt install python3.12-distutils python3.13-distutilsUbuntu将
distutils拆分为独立的apt包,需针对每个高版本Python单独安装。用Python自带的
ensurepip修复并升级pip:
针对Python3.12执行:python3.12 -m ensurepip --upgrade针对Python3.13执行:
python3.13 -m ensurepip --upgradeensurepip是Python内置的工具,可直接在现有Python环境中安装/升级pip,无需依赖外部pip。验证修复效果:
python3.12 -m pip --version python3.13 -m pip --version若能正常显示pip版本信息,说明问题已解决,此时即可正常使用pip安装包。
注意事项
后续操作高版本Python的pip时,务必使用python3.x -m pip的形式调用,避免与系统默认Python的pip产生版本冲突。
内容的提问来源于stack exchange,提问作者McSaks
相关产品推荐
相关产品推荐

