You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

执行py --version报错未找到Python,python --version却正常显示的原因?

为什么py --version找不到Python但python --version可以正常显示?

核心差异

py是Windows专属的Python启动器(Py Launcher),专门用来管理多版本Python,它依赖注册表或配置文件定位Python;而python是直接调用系统PATH中存在的Python可执行文件,两者的查找逻辑完全不同。

具体原因

  • Python启动器未安装或未加入PATH:安装Python时如果没勾选「Install launcher for all users」选项,系统中就不会生成py.exe,或者它的路径没被加入系统PATH,导致执行py命令时无法找到启动器本身,进而提示未安装Python。
  • 启动器无法识别你的Python安装:Py Launcher依赖注册表项(如HKEY_LOCAL_MACHINE\SOFTWARE\Python\PythonCore下的版本条目)识别已安装的Python。如果你的Python是便携版/绿色版,或者安装时未勾选写入注册表的选项,启动器就找不到它,但你手动把Python路径加到了PATH里,所以python命令能正常运行。
  • PATH顺序或残留文件问题:系统中存在旧版本的py.exe残留,或者py.exe所在路径(通常是C:\Windows)不在PATH中,而python.exe的路径在PATH里,就会出现py命令失效但python正常的情况。
  • 启动器配置文件错误:如果C:\Windows或用户目录下存在py.ini配置文件,里面的路径配置错误,会导致启动器无法定位Python安装。

解决办法

  • 重新安装Python,勾选「Install launcher for all users」和「Add Python to PATH」选项,确保启动器和Python路径都被正确配置。
  • 若使用便携版Python,可手动创建py.ini文件(放在C:\Windows目录下)指定Python路径,示例配置:
    [defaults]
    python=3.11
    [commands]
    python3=C:\your\python\path\python.exe
    
  • 检查系统PATH环境变量,确认C:\Windows(py.exe默认所在路径)在PATH列表中,且没有冲突的旧版本py.exe。

内容的提问来源于stack exchange,提问作者user22539017

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.10 18:44:53