Windows下怎么查Python版本?py命令与Python命令详解

不晚
不晚
发布时间:2026-10-27 | 3人浏览过
原创

在Windows系统下查看Python版本的常用方法与深度解析。详细拆解python命令与py命令的底层机制、多版本共存检索、环境变量配置及常见报错排查。

在 Windows 环境下查看已安装的 Python 版本,最直接的方式是在命令提示符(CMD)或 PowerShell 中执行 python --version 或 py --version。然而,很多用户在实际操作时经常遇到输入 python 毫无反应、弹出微软应用商店,或者安装了多个版本却不知道当前到底调用了哪一个的情况。本文将清晰拆解 Windows 下查看 Python 版本的具体步骤,并深入分析 python 与 py 这两个命令的本质区别、运行机制以及多版本管理的实用技巧。

一、Windows 下查看 Python 版本的快速操作

查看当前系统生效的 Python 版本,核心操作只需两步:打开终端并运行版本查询命令。

  1. 打开终端:按下键盘上的 Win + R 快捷键,在运行窗口中输入 cmd 或 powershell 并回车;也可以在任务栏开始菜单图标上右键,选择“终端”或“PowerShell”。
  2. 输入查询命令:在控制台光标处输入以下任一命令并回车:
命令示例:标准版本查询
python --version

参数也可以简写为大写字母 -V:

python -V
示例输出(实际显示视所安装版本而定):
Python 3.11.8

如果在执行上述命令时,系统提示“'python' 不是内部或外部命令,也不是可运行的程序”,或者屏幕突然弹出了 Windows 应用商店页面,请立即改用 Windows 专有的启动器命令:

py --version

该命令同样支持简写 py -V。在绝大多数标准安装的 Windows 系统中,py 命令无需手动配置环境变量即可直接生效。

Windows下怎么查Python版本?py命令与Python命令详解
图 1:Windows 环境下检查 Python 版本的标准操作与分支排查流程

二、为什么会有两个命令?python 与 py 的本质区别

很多初学者以为 py 只是 python 命令的一个简写别名,实际上两者的底层原理和定位有着本质区别。

1. python 命令:针对具体可执行程序的直接调用

python 命令代表的是操作系统对名为 python.exe 的可执行文件的直接调用。在 Windows 控制台中键入 python 时,系统遵循标准的程序查找规则:

  • 首先在当前工作目录下查找是否存在 python.exe;
  • 如果当前目录不存在,系统将依次遍历环境变量 PATH 中所登记的所有文件夹路径;
  • 一旦在某个目录中找到 python.exe,系统立即加载并启动该程序,检索终止;
  • 若遍历完 PATH 中的全部目录依然未找到,系统即抛出找不到可执行文件的错误。

这意味着 python 命令的高度依赖 PATH 环境变量。如果你同时安装了 Python 3.10 和 Python 3.12,系统只会运行在 PATH 列表中排列更靠前的那一个,无法通过原生 python 命令快速切换。

2. py 命令:Windows 专有的 Python 启动器(Python Launcher)

py 命令对应的程序实体是 Python Launcher for Windows(程序名为 py.exe)。它是 Python 官方从 3.3 版本开始引入、专门针对 Windows 系统设计的多版本管理与分发调度工具(遵循 PEP 397 规范)。

与 python.exe 存放在具体版本目录不同,py.exe 在安装时通常默认直接放置在 C:\Windows\ 或其他系统级内置路径下。因此无论你是否勾选了“添加环境变量”,py 命令都能直接被系统终端捕获。

更关键的是,py 并不直接充当解释器,而是一个调度中枢。它通过读取 Windows 系统注册表中记录的所有 Python 安装信息,能够感知本机安装的每一个 Python 实例,并允许用户通过参数自由指定唤醒哪一个版本。

Windows下怎么查Python版本?py命令与Python命令详解
图 2:python 与 py 命令在 Windows 底层的寻址机制对比

三、深入掌握 py 命令:多版本探测与精准调用

当你的电脑上因为不同项目需求,同时安装了多个 Python(例如 Python 3.9、Python 3.11 和 Python 3.12),py 命令能发挥非常关键的作用。

1. 查看本机已安装的所有 Python 版本(py -0)

执行以下命令,可以快速列出系统中所有被注册感知的 Python 版本:

命令示例:列出所有版本
py -0

或者使用完整参数格式:

py --list
示例输出:
Installed Pythons found by py Launcher for Windows
 -3.12-64
 -3.11-64 *
 -3.9-64

在上述输出中,每一行代表一个已安装的 Python 实例。版本号后面的 * 号表示当前系统的默认版本。当你在命令行中只输入 py 而不加版本参数时,系统就会默认调用该带星号的版本。

2. 查看各版本的绝对物理安装路径(py -0p)

很多时候我们需要知道某个 Python 具体安装在哪个磁盘路径(例如配置 IDE 解释器或查找 site-packages 目录)。只需在 -0 后加上字母 p(即 paths):

命令示例:查看所有版本及其路径
py -0p

或者使用等效全称:

py --list-paths
示例输出:
Installed Pythons found by py Launcher for Windows
 -3.12-64        C:\Users\Username\AppData\Local\Programs\Python\Python312\python.exe
 -3.11-64 *      C:\Program Files\Python311\python.exe
 -3.9-64         C:\Python39\python.exe

3. 指定版本查询或运行程序

掌握了系统中的版本后,你可以直接使用连字符加版本号的形式,指定使用任意特定版本来查验信息或执行脚本:

  • 查特定版本号:py -3.9 --version(即使默认是 3.11,也能准确打印出 3.9 的具体子版本)
  • 使用指定版本执行脚本:py -3.12 main.py
  • 针对特定版本安装第三方库:py -3.10 -m pip install requests
  • 指定系统架构位数:若同时安装了 32 位与 64 位的 Python 3.10,可通过 py -3.10-32 或 py -3.10-64 精准区分。
Windows下怎么查Python版本?py命令与Python命令详解
图 3:py 启动器的版本查看与调度指令体系矩阵

四、常见问题排查:为什么输入 python 会报错或打开微软应用商店?

在 Windows 上排查 Python 版本时,读者最常遇到的两类异常情况,其原因与解决方案如下:

1. 报错“'python' 不是内部或外部命令”

原因:在最初安装 Python 时,安装向导第一页最下方的 Add python.exe to PATH(将 Python 添加到系统环境变量)复选框默认是没有勾选的。未勾选时,系统的命令检索链路上不存在 Python 的路径。

应对措施:

  • 临时解决:优先直接改用 py --version,只要安装了官方 Python,启动器必然可以执行;
  • 彻底解决:重新运行 Python 安装包,点击“Modify(修改)”,在高级选项中补选“Add Python to environment variables”;或手动在“系统属性 -> 环境变量 -> 用户变量 Path”中添加 Python 安装目录及 Scripts 目录。

2. 输入 python 后直接弹窗打开 Microsoft Store(应用商店)

原因:Windows 10 和 11 系统预设了一套名为“应用执行别名(App execution aliases)”的机制。在系统环境变量中,默认包含了一个指向 %LOCALAPPDATA%\Microsoft\WindowsApps 的路径。当系统未检测到真实的 Python 解释器时,该目录下的零字节占位符程序会拦截 python 命令,并强制引导用户前往应用商店下载由微软打包的 Python。

彻底关闭方法:

  1. 打开 Windows 系统“设置”;
  2. 依次进入“应用” -> “高级应用设置” -> “应用执行别名”(在部分 Windows 10 版本中位于“应用和功能” -> “应用执行别名”);
  3. 在别名列表中找到名称为 “应用安装程序” 且对应 python.exe 与 python3.exe 的开关项;
  4. 将其状态从“开”切换为“关”。

关闭后重新打开一个终端窗口,原本的系统级劫持便会失效。

Windows下怎么查Python版本?py命令与Python命令详解
图 4:Windows Python 版本查询与环境排查决策树

五、命令选用与虚拟环境中的使用建议

综合以上机制分析,在 Windows 日常开发中,推荐遵循以下使用模式:

核心选择建议:

1. 全局环境探测与版本调度:优先使用 py。无需关心当前控制台的 PATH 优先权,通过 py -0p 可以看清全局格局,通过 py -3.11 可以稳定指定目标解释器,避免因安装顺序不同导致的解释器错乱。

2. 激活虚拟环境(venv)后:直接使用 python。当你通过 .\venv\Scripts\activate 激活了项目独立的虚拟环境后,激活脚本会自动将当前虚拟环境的 Scripts 路径置于系统 PATH 的最前端。此时执行 python 命令会精确指向该虚拟环境专属的解释器;而如果此时执行 py,由于 py 默认去检索全局注册表,反而可能跳出虚拟环境执行全局 Python。

六、常用命令速查对照表

最后,将 Windows 下常用的 Python 查询与调度命令整理如下表,方便日常查阅:

操作目标 推荐执行命令 适用场景与关键说明
查询当前默认版本 python --version 或 py --version 快速验证基础环境是否就绪;参数支持大写 -V
查看所有已安装版本 py -0 列出注册表中全部版本,带 * 的为默认项
查看所有版本及物理路径 py -0p 输出所有 Python 的 python.exe 完整磁盘路径
以特定版本查询或运行 py -3.10 -V / py -3.10 script.py 无需切换环境变量,直接唤醒指定的次版本
为特定版本独立安装第三方库 py -3.11 -m pip install 包名 防止全局多版本时 pip 命令装错目录的推荐写法
创建基于特定版本的虚拟环境 py -3.10 -m venv myenv 确保新建的虚拟环境继承指定 Python 版本的核心解释器
相关标签:

本站声明

本文内容仅供参考,不代表本站观点。转载或引用请注明出处。如发现内容问题,请通过联系我们页面反馈。

Python 相关产品和应用

全部下载

专题列表