Windows 7 SP1 用户无法安装 Python 3.9+,因其安装器硬编码要求系统版本 ≥10,直接调用 VerifyVersionInfoW 检查失败;唯一可行方案是安装 Python 3.8.10 并升级 pip。

Windows 7 SP1 用户遇到 “Setup failed: system version not supported” 怎么办
直接结论:不是补丁没打够,而是 Python 3.9+ 安装器硬编码拒绝 Windows 7 —— 即使装满所有 KB 补丁也无效。你看到的错误不是安装中途失败,是安装器启动第一秒就调用 VerifyVersionInfoW 检查 dwMajorVersion,Win7 返回 6.1,不满足 ≥10 的条件,直接退出。
哪些补丁根本没用,别白费时间
网上流传的 KB2533623、KB2999226、KB3125574 等,实测对绕过安装器检测完全无效:
- 它们解决的是运行时 DLL 缺失(如
api-ms-win-core-path-l1-1-0.dll),但安装器卡在“启动前”阶段,根本走不到加载 DLL 这一步 -
VerifyVersionInfoW读取的是系统内核报告的真实版本号,补丁无法伪造这个值 - 微软已于 2020 年 1 月终止 Win7 所有支持,Python 官方同步放弃兼容是合理决策,不是疏漏
真正能用的方案只有两个
别纠结“能不能骗过”,聚焦“怎么用上”:
- 下载
python-3.8.10-amd64.exe(64位)或python-3.8.10-win32.exe(32位),地址:python.org/downloads/release/python-3810/ - 安装时必须勾选
Add Python to PATH,否则python和pip命令在命令行里不可用 - 避开
embeddable zip包:它不带pip、不注册环境变量、不写注册表,新手手动配置极易出错 - 若机器确实是 32 位 CPU(非 64 位 CPU 上跑 32 位系统),只能选
win32版本;可用msinfo32查看“系统类型”确认
装完 pip 升级失败?不是网络问题,是 TLS 版本过旧
运行 python -m pip install --upgrade pip 报 SSL 错误,本质是 Python 3.8.10 自带的 pip 20.2.3 默认仍尝试 TLS 1.0/1.1,而 PyPI 已禁用:
- 先执行
python -m ensurepip --upgrade,强制刷新 pip 到内置最新版(该命令会升级 pip 本身,且不依赖外部网络) - 升级后验证:
pip --version应显示 pip 20.2.3 或更高(注意:3.8.10 发布时自带的就是 20.2.3,确保没被旧版覆盖) - 如果仍失败,说明系统时间严重偏差或根证书过期——Win7 SP1 的默认根证书库早已失效,需手动更新
certifi或换用国内镜像源
关键点在于:系统版本不兼容不是配置问题,是设计边界。接受 Python 3.8 是当前 Win7 下唯一稳定、可维护、带完整工具链的选择。任何试图“打补丁绕过”的操作,最终都会在 pip、venv 或第三方包编译环节再次暴露问题。
Python免费学习笔记(深入):立即使用
在学习笔记中,你将探索 Python 的核心概念和高级技巧!











