Windows 输入 python 打开微软商店?4 步检查别名与 PATH 优先级

本站复现实验 · Windows PowerShell · CPython 3.11.9 · 实验日期:2026-10-31

python 打开微软商店,或者执行 python --version 提示 Python was not found,先确认这个命令实际命中了哪个文件。电脑装过 Python,不代表当前终端一定优先找到那个解释器。

本文实测:本机有两个真实 Python 和一个 WindowsApps 别名。为复现问题,仅在独立 PowerShell 子进程里让 WindowsApps 优先;python --version 返回商店引导错误和退出码 9009。随后直接指定真实解释器、再在另一个子进程里调整 PATH 顺序,均运行成功。

配图是实际子进程输出保存为日志后,在本站只读日志查看器中打开的窗口截图,属于日志查看过程图,不是终端现场截图、客户案例或商店跳转画面。本次未复现无参数打开商店的界面,跳转机制参考微软文档。截图统一以 %LOCALAPPDATA% 代替账户目录,合并空行以便阅读,未改错误和实验结果;未修改系统或用户 PATH、未切换系统别名开关。

1. python 打开微软商店,先检查命令来源

在出现问题的 PowerShell 中运行下面两条查询命令。它们用于查看候选命令与路径,不会安装或卸载软件。

Get-Command python -All | Select-Object CommandType, Name, Source
where.exe python

PowerShell 中应写 where.exe,避免把 where 当成系统查找程序。在本机,候选项包含 C:\Program Files\Python311\python.exe、另一个 Python 3.12 解释器,以及 %LOCALAPPDATA%\Microsoft\WindowsApps\python.exe。

python 打开微软商店排查:实际命令候选同时包含真实 Python 与 WindowsApps 别名
图 1:原始环境能找到多个 python.exe;“有安装”与“当前选中哪个”需要分开核对。 点击查看原图。

再看当前实际选择的命令:

Get-Command python | Format-List CommandType, Name, Source

如果显示的是 PowerShell Alias 或 Function,需要先检查它自身的定义;仅比较 PATH 可能不够。本文复现实验中命令类型为外部应用,命中 WindowsApps 中的 python.exe。

2. 分清 WindowsApps 中的是哪一种别名

微软说明,Windows 内置的旧商店快捷方式可在无参数启动时打开商店;带命令行参数运行时,会返回未安装提示及错误码。因此看到商店页面和执行 python --version 得到错误,可能属于同一类命令入口问题。参见微软 Python 常见问题。

真实错误日志:WindowsApps 优先时 python --version 返回 Python was not found 和退出码9009
图 2:仅改变测试子进程的 PATH,命令选中 WindowsApps 别名;实际返回商店引导错误与9009。 点击查看原图。

可在 Windows 开始菜单搜索“管理应用执行别名 / Manage app execution aliases”,查看 python.exe、python3.exe 对应的应用名称。旧快捷方式通常归在“应用安装程序 / App Installer”下。确认确实是不用的旧快捷方式后,可以按微软说明关闭相应项;关闭快捷方式不会替你安装 Python。

新版环境不要照搬“全部关闭”:Python 官方的新安装管理器也会使用应用执行别名。若对应名称是 Python (default) 或 Python 安装管理器,应按它的故障排查说明检查启用状态与 PATH,而不是统一关闭。仅看到 WindowsApps 路径,不足以判定它一定是错误入口。参见 Python 官方 Windows 安装管理器说明。

本文没有实际操作别名开关,不能把本次子进程实验当作“关闭开关后已修复”的实测结果。

3. 先指定已安装的真实解释器

如果已经找到真实 Python,可以先绕开含糊的命令入口,直接验证它能否启动。下面路径来自本次实验;请替换为你自己确认过的路径,不要原样猜一个目录。

& "C:\Program Files\Python311\python.exe" --version
& "C:\Program Files\Python311\python.exe" -c "import sys; print(sys.executable); print(6 * 7)"
真实 Python 完整路径调用成功,打印3.11.9、解释器位置与42
图 3:即使 WindowsApps 仍排在测试 PATH 前面,完整路径调用真实 Python 仍成功。 点击查看原图。

本次输出 CPython 3.11.9 和 42,说明这个解释器可用。如果你找不到任何真实解释器,就需要先确认是否安装了 Python,以及课程或项目要求的版本;关闭商店快捷方式后出现“找不到命令”,也不等于 Python 已安装成功。

4. 整理入口后,在新终端验证 PATH

使用传统独立安装版时,可以检查它的安装选项或用户环境变量 PATH,确认真实解释器目录是否存在、顺序是否符合预期。要添加的是包含 python.exe 的目录,而不是把单个 exe 文件放进 PATH;先确认需要哪个版本,避免把多套环境随意混在一起。

本次为了验证原因,只在新的测试子进程中把真实解释器目录放到 WindowsApps 前面。下图证明这个顺序改变足以让该测试命令选中正确解释器,不表示已永久修改电脑设置。

子进程 PATH 中真实 Python 优先后,python --version 与计算示例都成功
图 4:实际命令来源已变成 Python311,版本输出与计算成功,退出码0。 点击查看原图。

如果你确实调整了安装选项、用户 PATH 或应用别名,关闭旧终端,重新打开后运行:

Get-Command python | Format-List CommandType, Source
where.exe python
python --version
python -c "import sys; print(sys.executable); print(6 * 7)"

验收要同时看命令来源、版本和实际输出,而不是只看有没有再弹商店。若在 VS Code 集成终端中仍看到旧结果,重启编辑器后再查;终端与运行按钮不一致时,继续看 VS Code 解释器与运行入口排查。

常见误区与后续排查

要不要删除整个 WindowsApps 目录或把它从 PATH 移除?

不建议为了这一个问题删除整个目录或整条路径;其他应用和新版 Python 管理器可能也需要它。先识别具体别名和正确入口,不要把共享目录当作无用文件夹。

python3 失败,但 python 正常,说明没装好吗?

两个命令可能由不同入口提供。本机就能同时找到真实 python 与 WindowsApps 的 python3;应分别检查 Get-Command python3 -All,不要仅凭一个命令推断所有安装都损坏。

能启动了,却提示缺少第三方包?

这已进入依赖与环境归属问题。先使用同一解释器查询 pip,再参考 包已安装却出现 ModuleNotFoundError 的排查教程。不要为了缺包重新安装全部 Python。

虚拟环境激活又提示禁止运行脚本?

这是另一种错误,应看 PowerShell 无法激活虚拟环境的排查与替代用法,不能靠调整商店别名解决所有问题。

需要协助确认 Python 安装与命令入口?

发送 Windows 版本、完整错误、命令来源查询结果,以及你希望运行的课程或项目。截图前遮住账号、密钥和不希望公开的路径,不要发送密码或验证码。

先咨询后报价,确认范围与费用后预约远程协助;项目依赖与已有环境排错单独评估。

发送 Python 报错截图咨询

查看 Python 基础环境安装与验收 · 查看 Python+VS Code 服务

实验范围

本次使用 Windows PowerShell 与 CPython 3.11.9。通过独立子进程限定 PATH 来比较旧 WindowsApps 快捷方式与真实解释器,父进程 PATH 前后相同。没有安装新软件、修改系统或用户环境变量,也没有切换应用别名。新版安装管理器、组织管理设备和不同 Windows 版本的结果需要分别确认。

发表评论

您的邮箱地址不会被公开。 必填项已用 * 标注

滚动至顶部