Windows 11 + Python 3.12.5环境下pip install报错‘No module named 'distutils'’求助
Windows 11 + Python 3.12.5环境下pip install报错‘No module named 'distutils'’求助
兄弟,我之前在Windows 11用Python 3.12的时候也踩过一模一样的坑!核心原因是Python 3.12开始默认不再自带distutils模块了,从官网直接下载的安装包如果没选对应的可选组件,就会缺这个依赖,直接导致pip运行出错。给你两个亲测有效的解决办法:
办法一:修复Python安装,补装distutils
这是最稳妥的方式:
- 找到你当初安装Python 3.12.5的安装程序(找不到的话就去官网重新下载同一个版本的64位安装包);
- 运行安装包,选择界面里的「Modify」(修改)选项;
- 在「Optional Features」页面,确保勾选「distutils」选项(如果之前没勾的话);
- 一路点击「Next」完成修复安装,重启终端后再试
pip install -r .\requirements.txt应该就正常了。
办法二:通过setuptools间接补充distutils
如果不想动原安装,也可以试试升级setuptools——现在distutils的核心功能已经被整合到setuptools里了:
打开PowerShell,执行下面的命令:
python -m pip install --upgrade setuptools
执行完成后再重新运行pip安装requirements的命令,大概率能解决问题。
另外提醒下,尽量用python -m pip install ...代替直接打pip,这样能确保你用的是Python3.12对应的pip版本,避免误用到其他环境的pip。
备注:内容来源于stack exchange,提问作者Jonathan




