Windows 的 py 启动器默认应调用系统中最新安装的 Python,但若 py --version 与 python3 --version 显示不同版本,说明启动器的默认配置未同步——可通过 py -0p 查看已注册版本,并用 py -3.12 --default 手动设为最新版。
windows 的 `py` 启动器默认应调用系统中最新安装的 python,但若 `py --version` 与 `python3 --version` 显示不同版本,说明启动器的默认配置未同步——可通过 `py -0p` 查看已注册版本,并用 `py -3.12 --default` 手动设为最新版。
在 Windows 系统中,py 是官方提供的 Python 启动器(Python Launcher),其设计目标之一就是简化多版本共存场景下的调用管理。与直接通过 python 或 python3 调用环境变量路径中的解释器不同,py 依赖于 Windows 注册表(或用户级配置)中注册的 Python 安装信息,并维护一个“默认版本”偏好设置。因此,即使你已通过官网安装器、Microsoft Store 或其他方式安装了 Python 3.12.2,py 仍可能沿用旧版(如 3.8.10)作为默认值——这并非错误,而是启动器的显式配置行为。
✅ 第一步:查看所有已注册的 Python 版本
在命令提示符或 PowerShell 中运行:
py -0p
输出示例:
-V:3.12 * C:\Users\Alice\AppData\Local\Programs\Python\Python312\python.exe -V:3.8 C:\Python38\python.exe
其中 * 标记当前默认版本。若 3.12 行未带星号,说明它尚未被设为默认。
✅ 第二步:将指定版本设为 py 默认
执行以下命令(注意版本号需与 py -0p 输出中完全一致,包括小数点后位数):
py -3.12 --default
成功后再次运行 py --version,应返回 Python 3.12.2。该操作会更新注册表项 HKEY_CURRENT_USER\Software\Python\Launcher\DefaultVersion,不影响系统级安装或其它用户的配置。
elasticsearch-9.4.0 win
PHP中文网提供Elasticsearch 9.4.0 Windows 版本压缩包下载解压即用,内置 OpenJDK 无需额外配置 Java 环境。该版本重磅推出原生 Prometheus 支持、正式版 Elastic Workflows 以及基于 NVIDIA cuVS 的 GPU 加速向量索引,大幅提升 AI 检索与可观测性能力。建议前往官网下载,快速体验极速搜索与强大的数据分析功能。
⚠️ 注意事项:
- py -3.12 --default 仅影响 py(及无参数的 py)行为,不改变 python、python3 命令的指向;后者由 PATH 环境变量决定,需单独调整。
- 若 py -0p 未列出 3.12,请确认安装时勾选了 “Add Python to PATH” 和 “Associate files with Python”(部分安装器选项),或尝试以管理员身份重新运行 Python 3.12 安装程序并选择“Repair”。
- 不建议手动编辑注册表;--default 是微软推荐的安全配置方式。
? 进阶提示:你还可以使用 py -3.12 script.py 显式调用特定版本,或在脚本首行添加 #! python3.12 实现版本绑定,提升跨环境可移植性。通过合理使用 py 启动器,可高效管理开发、测试与生产所需的多 Python 版本共存场景。