Windows升级Python3.12后pip安装依赖报错:找不到distutils模块
Python 3.12安装依赖时numpy报错找不到distutils的解决办法
问题现象
升级到Python 3.12后执行pip install -r requirements.txt,安装numpy 1.25.2时出现错误:
ModuleNotFoundError: No module named 'distutils'
原因
Python 3.12开始不再默认捆绑distutils模块(该模块已被官方标记为弃用),而旧版本的numpy在构建时依赖它。
解决步骤
方法1:通过Python安装程序补装distutils
- 找到Python 3.12的安装程序(若已删除,可重新下载对应版本安装包)
- 运行安装程序,选择Modify(修改)选项
- 在可选功能列表中找到Python distutils并勾选
- 点击Next完成安装,之后重新执行
pip install -r requirements.txt
方法2:通过pip安装setuptools(推荐)
distutils的功能已整合到setuptools中,直接安装即可解决依赖问题:
pip install --upgrade setuptools
安装完成后重新执行依赖安装命令:
pip install -r requirements.txt
可选优化:升级numpy到兼容Python 3.12的版本
若上述方法仍有问题,可将requirements.txt中的numpy版本升级到1.26.0及以上(该版本开始正式支持Python 3.12),修改后的numpy行:
numpy>=1.26.0
之后再执行安装命令。
内容的提问来源于stack exchange,提问作者ayitinya
相关产品推荐
相关产品推荐

