Windows和Mac命令行怎么运行Python脚本

陆景行
陆景行
发布时间:2026-11-02| 7人浏览过
原创

详细讲解在 Windows 和 Mac 系统的命令行终端中如何正确运行 Python 脚本,涵盖解释器验证、路径切换、命令差异、传参与常见报错排查。

在命令行运行 Python 脚本,本质上只有两步:一是调用正确的 Python 解释器命令,二是把脚本文件的路径传给它。很多初学者在点击代码编辑器的“运行”按钮时一切顺利,一打开黑底白字的命令行却频繁遭遇“找不到命令”或“找不到文件”。这通常不是代码本身有问题,而是操作系统寻找程序和解析文件路径的机制没有理顺。只要掌握了终端操作逻辑与双系统下的命令差异,在命令行执行脚本就会变成一种轻快、可控的操作习惯。

Windows和Mac命令行怎么运行Python脚本
图 1:在操作系统命令行中执行 Python 脚本的四个核心阶段

一、运行前的核心常识:解释器与路径

在直接敲命令前,有两项基础概念直接决定了执行能否成功:

  1. 命令指代的是谁: 当你在终端敲下 python、python3 或 py 时,操作系统并不会直接读懂你的 .py 代码,而是去系统路径(PATH 环境变量)中查找名为该可执行程序的二进制文件,再由该程序作为“翻译官”去逐行解释你的脚本。
  2. 当前工作目录(Current Working Directory): 打开终端时,终端默认停留在你的用户根目录(如 Windows 下的 C:\Users\用户名,Mac 下的 /Users/用户名)。如果不切换目录,直接输入文件名,系统会在用户根目录下搜寻,自然会报出“找不到文件”的错误。
Windows和Mac命令行怎么运行Python脚本
图 2:两类主流操作系统中解释器调用与分发链路的差异

二、Windows 命令行运行 Python 脚本

在 Windows 上,微软推荐使用“Windows 终端”(Windows Terminal)或传统的“命令提示符”(CMD),也可以使用 PowerShell。假设我们在 D:\projects 目录下有一个名为 app.py 的测试脚本,内容为打印一段欢迎语句。

1. 启动命令行与确认 Python 环境

按下键盘快捷键 Win + R,在弹出的“运行”框中输入 cmd 并回车,即可打开命令提示符。首先输入以下命令验证 Python 是否已经就绪:

py --version

或者:

python --version

如果控制台正确打印了版本号(例如 Python 3.11.4),说明环境正常。在 Windows 平台,强烈建议优先使用 py 命令。py.exe 是官方安装包附带的 Python 启动器(Python Launcher),无论你的安装路径多么深,它都能自动探测并调用系统里注册的最新 Python 引擎。

2. 切换到脚本所在目录

这一步是多数新手容易卡住的地方。假设脚本保存在 D:\projects,在 CMD 中直接输入 cd D:\projects 往往无法直接切过去,因为 CMD 默认保留在 C 盘。必须加上 /d 参数以实现跨驱动器切换:

cd /d D:\projects

如果是在 PowerShell 中,直接使用 cd D:\projects 即可。切换成功后,命令提示符左侧的前缀路径会变成 D:\projects>。你可以输入 dir 命令查看当前目录下的文件列表,确认 app.py 确实在此处。

3. 执行脚本命令

确认处于脚本同级目录下后,输入如下命令并回车:

py app.py

如果系统没有配置 py 启动器,但安装时勾选了“Add Python to PATH”,则可以使用:

python app.py

屏幕上将即时打印出脚本的运行结果。

技巧:不想 cd 怎么直接运行?
如果不想每次都切换目录,可以直接在解释器命令后跟上文件的绝对路径。例如:
py "D:\my projects\app.py"
注意:如果文件路径中包含空格(如上面的 my projects),必须用英文双引号将完整路径包裹起来,否则命令行会把空格当作参数分隔符,导致报出找不到文件的错误。

三、Mac 终端运行 Python 脚本

macOS 自带名为“终端”(Terminal)的原生应用,默认使用的 Shell 是 zsh。Mac 环境与 Windows 最大的不同在于:苹果在 macOS 12.3 之后彻底移除了系统内置的 Python 2,且默认不会为 python 命令创建软链接。

1. 打开终端与核验版本

按下 Command + 空格键 唤起聚焦搜索(Spotlight),输入 终端 或 Terminal 后回车打开。首先输入命令检测 Python 3:

python3 --version

如果此时误输入了 python --version,终端通常会提示 zsh: command not found: python。记住:在 Mac 终端中,务必显式输入 python3。

2. 切换目录与绝妙的“拖拽输入”

假设你的脚本存放在桌面上的 code 文件夹中,在终端输入:

cd ~/Desktop/code

按回车进入。此时输入 ls 可以列出该文件夹下的所有文件。

如果你不清楚脚本的具体路径,Mac 终端提供了一个极其便捷的操作:先在终端输入 cd (注意 cd 后面有一个空格),然后直接从访达(Finder)中将文件夹图标拖入终端窗口,终端会自动填充该文件夹的完整转义路径,直接回车即可精准进入。

3. 执行脚本命令

进入目录后,运行目标文件:

python3 app.py

如果需要直接运行指定路径的文件,同样可以先输入 python3 (带空格),然后将访达里的 app.py 文件拖进终端窗口,终端会自动补齐完整路径,敲回车即可立即执行:

python3 /Users/yourname/Desktop/code/app.py

4. 高级用法:赋予可执行权限直接运行

在 Mac 等类 Unix 系统中,你可以让 Python 脚本像独立程序一样运行,无需每次手动敲 python3。只需满足两个条件:

  1. 在脚本的第一行加入 Shebang 声明:
    #!/usr/bin/env python3
  2. 在终端中使用 chmod 命令为该文件赋予执行权限:
    chmod +x app.py

完成这两步后,在当前目录下只需输入 ./app.py 即可直接运行。

四、常见报错与排查决策树

命令行运行过程中遇到的问题往往集中在少数几个典型场景。遇到运行中断时,可以对照下方的决策路径逐一排查:

Windows和Mac命令行怎么运行Python脚本
图 3:命令行运行过程中四类高频错误的成因与排查导引

五、进阶:传递参数与虚拟环境运行

1. 接收命令行参数

在实际开发中,我们经常需要在执行时向脚本传递动态参数,比如文件名、端口号或运行模式。只需在执行命令的末尾以空格分隔依次追加:

# Windows
py app.py --mode production --port 8080

# Mac
python3 app.py --mode production --port 8080

在 Python 脚本内部,这些参数可以通过标准库 sys.argv 列表直接读取,或使用 argparse 模块进行规范化解析。

2. 在虚拟环境(venv)中运行脚本

大型项目通常拥有独立的依赖环境。当你在项目根目录创建了虚拟环境(例如名为 .venv)后,运行方式推荐遵循以下规范:

第一种方式:先激活环境再运行(适合连续操作)

# Windows 激活 (CMD)
.venv\Scripts\activate.bat

# Windows 激活 (PowerShell)
.venv\Scripts\Activate.ps1

# Mac 激活
source .venv/bin/activate

# 激活后终端提示符前会出现 (.venv),此时直接输入 python 即可调用该隔离环境:
python app.py

第二种方式:不激活直接调用虚拟环境解释器(适合批处理或定时任务)

# Windows 直接调用
.venv\Scripts\python.exe app.py

# Mac 直接调用
.venv/bin/python3 app.py

六、Windows 与 Mac 运行命令速查总结

为了便于日常翻阅,下表整理了两个操作系统在日常运行 Python 脚本时的关键命令与语法对照:

操作场景 Windows 推荐写法 Mac 推荐写法 核心注意事项
查看已安装版本 py --version 或 python -V python3 --version Mac 切忌只输 python
跨盘符/路径切换 cd /d D:\projects cd ~/projects CMD 跨盘必须加 /d
运行同级目录脚本 py app.py python3 app.py 必须确保终端已定位到该目录
处理带空格的路径 py "D:\my code\app.py" python3 "/Users/me/my code/app.py" 必须使用英文双引号闭合路径
强制中断执行 Ctrl + C Control + C 双平台通用快捷键
Windows和Mac命令行怎么运行Python脚本
图 4:Windows 与 Mac 核心运行命令与技巧横向对比

掌握了终端与解释器交互的基本规则后,命令行不再是令人望而生畏的代码黑盒,而是最直接、最轻量、最容易被脚本与自动化任务调用的执行入口。

免责声明:本文内容仅供参考,不代表本站观点。转载或引用请注明出处。

Python 相关产品和应用

全部下载
Selenium

Selenium

4.51.0 · Windows

用于浏览器自动化和 Web 测试的 Python 工具。

scikit-learn

scikit-learn

1.9.1 · Windows

常用 Python 机器学习算法与模型评估工具库。

Black

Black

26.10.1 · Windows

强调一致性的 Python 自动代码格式化工具。

Ruff

Ruff

0.17.1 · macOS

由 Rust 编写的高速 Python 代码检查和格式化工具。

pytest

pytest

9.1.1 · Windows

简洁而强大的 Python 自动化测试框架。

FastAPI

FastAPI

0.146.0 · Windows

高性能 Python API 框架,支持类型提示和自动接口文档。

Flask

Flask

3.1.3 · Windows

轻量灵活的 Python Web 应用框架。

Django

Django

6.1.2 · Windows

成熟的 Python Web 框架,适合构建内容站点和业务系统。

Spyder

Spyder

6.1.7 · Windows

面向科学计算与数据分析的 Python 集成开发环境。

SciPy

SciPy

1.18.1 · Windows

面向科学、工程和技术计算的 Python 算法库。