Windows和Mac终端怎么运行Python脚本文件

山间有风
山间有风
发布时间:2026-11-03 | 4人浏览过
原创

深入浅出讲解在 Windows 和 Mac 终端中运行 Python 脚本文件的实用方法。包含终端启动、解释器命令选择、相对与绝对路径调用、命令行参数传递以及常见报错排错决策。

开发环境与命令行操作

在 Windows 或 Mac 终端运行 Python 脚本,核心逻辑只有两步:调用 Python 解释器命令,并把脚本文件的路径作为参数传给它。尽管底层原理完全相同,但两套操作系统在终端工具、解释器启动命令、路径书写规范以及权限管理上存在细微差异。本文将系统梳理在 Windows 和 Mac 终端中运行 .py 文件的标准步骤、路径调用方式以及高频排错方法。

Windows和Mac终端怎么运行Python脚本文件
图示:Windows 与 macOS 终端执行 Python 脚本的直观对比与核心公式

一、执行前的准备:唤起终端与核对解释器

运行 Python 脚本的第一步是打开操作系统的终端工具,并确认当前环境已经正确安装并识别了 Python 解释器。如果终端本身无法找到 Python 程序,后续的一切调用都无从谈起。

1. 如何在两套系统中打开终端

  • Windows 系统:按下键盘快捷键 Win + R,在弹出的运行框中输入 powershell 或 wt(若安装了 Windows Terminal),回车即可打开终端窗口;也可按下 Win + S 直接搜索“PowerShell”或“终端”。
  • macOS 系统:按下快捷键 Command + 空格键 唤起聚焦搜索(Spotlight),输入 终端 或 Terminal,回车即可打开 macOS 默认的 zsh 终端工具。

2. 确认当前可用的 Python 指令

两套系统在默认的解释器命名约定上存在差异。请先在终端中输入版本核验命令并观察反馈:

Windows 终端核验命令(示例)
PS C:\Users\Username> py --version
# 示例输出:Python 3.12.2

PS C:\Users\Username> python --version
# 示例输出:Python 3.12.2

在 Windows 上,官方安装包会默认安装名为 py 的 Python 启动器(Python Launcher)。只要安装过 Python,直接输入 py 往往比 python 更稳妥,因为它会自动寻找系统中注册的最新可用版本。

macOS 终端核验命令(示例)
user@MacBook-Pro ~ % python3 --version
# 示例输出:Python 3.11.8

在 Mac 系统上,务必养成使用 python3 的习惯。由于历史原因,早期 macOS 内置过已废弃的 Python 2.7,输入裸 python 要么提示找不到命令,要么弹出系统开发工具提示。因此在 Mac 下明确键入 python3 是标准且安全的操作。

Windows和Mac终端怎么运行Python脚本文件
图 1:终端执行 Python 脚本的标准四步流程(打开终端 → 确认解释器 → 指定路径 → 组合回车)

二、核心操作:两种最常用的运行方式

在终端中执行 Python 脚本时,核心语法始终为:<解释器名称> <脚本文件路径>。根据读者是否需要频繁切换目录,主要有两种具体操作方式。

方式一:先 cd 进入目录,再执行相对路径(推荐方式)

这是在日常开发和工程部署中最推荐的标准做法。先使用 cd(Change Directory)命令把终端的工作目录切换到脚本所在的文件夹,然后直接通过脚本文件名运行。

步骤示范:Windows 平台(假设脚本位于 D 盘项目的 demo 文件夹中)
PS C:\Users\Username> cd D:\projects\demo
PS D:\projects\demo> py main.py
[示例输出] 数据计算已完成,生成报告:success
步骤示范:macOS 平台(假设脚本位于下载目录中的 demo 文件夹)
user@MacBook-Pro ~ % cd ~/Downloads/demo
user@MacBook-Pro demo % python3 main.py
[示例输出] 数据计算已完成,生成报告:success

为什么强烈推荐方式一?因为 Python 代码在读写相对路径的资源(如 open("data.csv"))或导入同目录下的其他 .py 模块时,其基准参考路径是终端的当前工作目录(Current Working Directory)。先 cd 进入目录,可以确保代码运行时的相对路径解析与文件存放物理位置保持严格一致,杜绝“找不到文件”的异常。

方式二:不切换目录,直接传入完整绝对路径(便捷方式)

当只是想快速测试某个单文件脚本,或者不想离开当前终端目录时,可以直接在解释器命令后跟上该脚本的绝对路径。

有一个极其省事的通用技巧:在终端中输入 py (Windows)或 python3 (Mac),后面打一个空格,然后直接从文件管理器(资源管理器或访达)中把 .py 文件用鼠标拖入终端窗口。终端会自动把文件的完整路径填充进去,并自动处理好空格和引号。

绝对路径执行示例
# Windows 示例(路径若含空格,务必用英文双引号包裹)
PS C:\Users\Username> py "C:\My Projects\Data Tools\app.py"

# macOS 示例(终端拖拽会自动处理空格转义或引号)
user@MacBook-Pro ~ % python3 /Users/alex/projects/data_tools/app.py
Windows和Mac终端怎么运行Python脚本文件
图 2:先 cd 目录执行(相对路径)与直接传绝对路径执行(拖拽法)的机制对比与适用场景

三、Windows 与 Mac 终端关键差异与进阶技巧

虽然 Python 语言本身具备跨平台特性,但在不同的操作系统终端中操作时,以下四项系统机制差异需要特别留心。

Windows和Mac终端怎么运行Python脚本文件
图 3:Windows 与 macOS 终端执行环境特性横向对照表

1. 路径分隔符与空格转义规则

Windows 传统使用反斜杠 \ 作为路径分隔符(如 C:\Code\test.py),而 macOS 与 Linux 统一使用正斜杠 /(如 /Users/name/test.py)。现代 Windows PowerShell 已经对正斜杠 / 提供了良好兼容,但在传统 CMD 中仍需使用反斜杠。

如果路径中包含空格,Windows 要求使用成对的英文双引号将整个路径包裹起来:py "D:\My Scripts\test.py";而在 Mac 终端(zsh)中,除了使用引号包裹外,还可以通过反斜杠对空格进行转义,例如:python3 /Users/name/My\ Scripts/test.py。

2. Mac/Linux 专有特性:Shebang 与可执行权限

在 Mac 或类 Unix 系统中,可以把 Python 脚本配置成类似于原生系统命令一样直接执行,省去每次输入 python3 的步骤:

  1. 在 .py 脚本的第一行添加 Shebang 声明:
    #!/usr/bin/env python3
  2. 在 Mac 终端中运行 chmod +x script.py,为该文件赋予系统可执行权限。
  3. 之后便可在当前目录下直接执行:
    user@MacBook-Pro demo % ./script.py

3. 向脚本传递命令行参数与获取退出码

许多 Python 脚本在执行时需要接收动态外部参数。只需在脚本路径后依次用空格追加参数即可:

# 执行脚本并传递两个参数:input.csv 和 100
PS D:\demo> py process.py input.csv 100
user@Mac demo % python3 process.py input.csv 100

在 process.py 脚本内部,可以通过标准库的 sys.argv 列表依次获取这些传入值:

import sys

print(f"脚本名称: {sys.argv[0]}")
if len(sys.argv) > 2:
    print(f"参数1: {sys.argv[1]}, 参数2: {sys.argv[2]}")

脚本执行结束后,如果需要由自动化批处理命令判断脚本是成功结束还是异常退出,可查看终端的退出状态码(Exit Code)。通常返回 0 表示执行成功,非 0 表示发生错误:

  • Windows PowerShell:运行后输入 $LASTEXITCODE 查看数字代码;在传统 CMD 中使用 echo %ERRORLEVEL%。
  • macOS 终端(zsh/bash):运行后输入 echo $? 即可打印上一条命令的退出状态码。

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

当在终端敲下回车后未能得到预期输出,而是打印出一连串英文报错时,不用慌张。根据以下决策图即可快速锁定故障根因并予以解决。

Windows和Mac终端怎么运行Python脚本文件
图 4:终端运行 Python 脚本常见故障排查决策树

高频报错解决方案详解

排查 1:'python' 不是内部或外部命令,也不是可运行的程序

原因:Windows 系统的环境变量 PATH 中没有配置 Python 的安装路径。
解决步骤: 1. 优先尝试输入 Windows 启动器命令 py app.py;
2. 若 py 也无效,说明 Python 尚未安装,或安装时漏选了关键选项。请重新运行 Python 安装包,务必勾选安装界面的 “Add python.exe to PATH”,或通过系统高级属性手动将 Python 安装目录及 Scripts 文件夹追加至 PATH 环境变量中。

排查 2:[Errno 2] No such file or directory: 'xxx.py'

原因:终端当前所在的位置根本找不到这个文件。
解决步骤: 1. 先核验当前终端位置:在 Windows 中输入 cd(或 pwd),在 Mac 中输入 pwd,观察当前工作目录与脚本文件所在的实际目录是否一致;
2. 查看目录内容:在 Windows 输入 dir,在 Mac 输入 ls,检查目标文件是否切实存在;
3. 检查文件名与后缀:Windows 资源管理器默认可能勾选了“隐藏已知文件类型的扩展名”,读者误将文件命名成了 app.py.txt,此时应修正为 app.py;此外 macOS 文件系统在很多配置下区分大小写,务必确认拼写准确。

排查 3:ModuleNotFoundError: No module named 'xxx'

原因:脚本中通过 import 引入的第三方扩展库尚未安装在当前调用的 Python 环境中。
解决步骤: 使用匹配的 Python 解释器配套安装依赖包:
· Windows: py -m pip install <库名>
· macOS: python3 -m pip install <库名>
使用 python -m pip 形式比直接调用 pip 更加严谨,能确保第三方库精准安装到当前终端调用的那个 Python 环境中。

本站声明

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

Python 相关产品和应用

全部下载

专题列表