Windows与Mac下怎么创建并运行Python脚本
详细讲解在Windows与macOS操作系统下创建、编辑并运行Python脚本的完整步骤,涵盖环境确认、文件创建防坑要点、命令行路径导航与常见报错排查。
一、运行前的准备:确认两系统中的 Python 环境
在开始写代码前,需要先确认你的计算机上是否已经正确安装了 Python 解释器,以及在命令行中调用它的具体命令名称。
1. Windows 环境验证
按下键盘快捷键 Win + R,在弹出的“运行”对话框中输入 cmd 或 powershell 并回车,打开命令行窗口。输入以下命令并回车:
python --version
Python 3.11.5
若系统提示 'python' 不是内部或外部命令,也可以尝试输入 Windows 专用的 Python 启动器命令:
py --version
如果两个命令都能正确显示版本号(如 Python 3.x.x),说明 Python 已经就绪;如果均报错,说明尚未安装 Python,或者在安装时未勾选“Add python.exe to PATH”(将 Python 添加至系统环境变量)。
2. macOS 环境验证
在 Mac 上,按下 Command + 空格键 打开聚焦搜索(Spotlight),输入 Terminal 或“终端”并回车。在终端窗口中输入以下命令:
python3 --version
Python 3.12.0
在较旧版本的 macOS 中,系统曾内置过 Python 2.7。为了避免命令混淆并保持兼容性,所有现代 Python 3 环境在 Unix 体系下均保留了 python3 这一显式命名。若在现代 macOS 的 zsh 终端中直接键入 python,通常会收到 zsh: command not found: python 提示。
二、创建与运行的标准四步流程
从无到有执行一段脚本,操作链条由“验证环境 -> 编写脚本 -> 定位目录 -> 命令执行”四个环节构成,各环节的产物与目标非常明确。
理解这个流水线有助于快速排查问题。例如,若终端提示找不到文件,问题必定出在第 3 步(目录定位)或第 2 步(文件名);若提示命令不存在,问题则出在第 1 步(环境配置)。
三、创建 Python 脚本文件:代码编写与防坑保存
Python 脚本本质上是纯文本文件,通常以 .py 为扩展名。你可以使用专业代码编辑器(如 Visual Studio Code、Sublime Text),也可以使用系统自带的简易文本工具。但在跨平台使用系统自带工具时,有两处极易踩坑的细节需要特别注意。
1. 编写示例代码
我们在桌面上或者容易找到的目录(例如项目目录)中新建一个名为 hello.py 的文件。在文件中键入以下代码:
# hello.py: 用于验证运行环境的标准测试脚本
import sys
print("你好,Python!脚本已成功运行。")
print("当前运行平台:", sys.platform)
print("当前解释器版本:", sys.version.split()[0])
2. Windows 下的保存注意事项
- 务必显示文件扩展名:打开“文件资源管理器”,在顶部菜单点击“查看” -> “显示” -> 勾选“文件扩展名”。如果未勾选,你新建并命名为
hello.py的文件,真实全名很可能是hello.py.txt,导致在命令行中执行python hello.py报错提示找不到文件。 - 编码保存为 UTF-8:如果使用 Windows 记事本,在点击“文件” -> “另存为”时,“保存类型”必须切换为“所有文件 (*.*)”,文件名输入
hello.py,底部的“编码”务必确认为 UTF-8,以防代码中的中文字符引发编码异常。
3. macOS 下的保存注意事项
- 切换纯文本模式:macOS 自带的“文本编辑”(TextEdit)默认处于“富文本(RTF)”模式,保存时会附带大量排版元数据,导致 Python 无法识别。打开文本编辑后,必须在顶部菜单点击“格式” -> “制作纯文本”(快捷键
Shift + Command + T)。 - 确认后缀无 .txt 追加:在文本编辑中保存为
hello.py时,系统如果弹窗询问“是否要追加 .txt 扩展名”,请果断选择“使用 .py”。
四、在终端中定位并运行脚本
脚本保存完成后,便可进入最关键的运行环节。运行的核心逻辑是:先将命令行的工作目录切换到脚本所在的文件夹,再输入执行命令;或者直接使用文件的完整绝对路径运行。
1. 方法一:通过 cd 命令切换目录后运行(推荐标准做法)
假设你的 hello.py 保存在各自系统的文档目录或桌面:
在 Windows 下:
# 假设文件保存在 C:\Users\YourName\Desktop
cd C:\Users\YourName\Desktop
python hello.py
在 macOS 下:
# 假设文件保存在 ~/Desktop (桌面)
cd ~/Desktop
python3 hello.py
你好,Python!脚本已成功运行。
当前运行平台: darwin
当前解释器版本: 3.12.0
2. 方法二:直接通过脚本绝对路径运行
无需切换当前目录,直接在解释器名称后面附带文件的完整路径:
Windows 示例:python "C:\Users\YourName\Desktop\hello.py"
macOS 示例:python3 "/Users/YourName/Desktop/hello.py"
若路径中包含空格或中文字符,建议使用双引号将路径包裹起来。
3. 两个系统的专属快捷技巧
- Windows 地址栏秒开 CMD:在文件资源管理器中直接打开存放
hello.py的文件夹,鼠标点击上方路径地址栏,直接输入cmd并按回车,命令行便会自动打开且直接处于该文件夹下,无需手动输入cd路径。 - Mac 拖拽文件自动填充绝对路径:打开终端后,先敲入
python3(注意后面留一个空格),然后从访达(Finder)中直接把hello.py文件图标拖进终端窗口,终端会自动补全该文件的完整绝对路径并转义特殊字符,直接回车即可执行。
五、Windows 与 macOS 环境对照
为了让跨平台开发或切换系统的读者能够清晰对照,下表与对照图整理了两大系统的核心差异:
| 对比项目 | Windows 环境 | macOS 环境 |
|---|---|---|
| 常用终端工具 | PowerShell、Windows 终端、CMD (命令提示符) | 终端 (Terminal.app)、iTerm2 |
| 终端默认 Shell | PowerShell 语法 / Windows 批处理语法 | Zsh (自 macOS Catalina 起默认) |
| 常用运行命令 | python hello.py 或 py hello.py |
python3 hello.py |
| 路径分隔符与格式 | 反斜杠 \,如 C:\Projects\hello.py |
正斜杠 /,如 /Users/name/hello.py |
| 主目录标识 | %USERPROFILE% 或环境变量 $HOME |
波浪号 ~ |
| 目录内容列出命令 | dir (PowerShell 中亦支持 ls) |
ls |
六、常见运行报错与排查决策
在创建和运行脚本的过程中,如果控制台输出了错误信息而非预期内容,可参考下方的决策排查图进行逐项对照排查。
1. 报错:'python' 不是内部或外部命令 / command not found
表现:在终端敲下命令后,系统直接报错,连 Python 的版本号都未能打印。
原因与解决:
- Windows 环境:通常是因为安装 Python 时未勾选“Add python.exe to PATH”。可以重新下载官方安装包,点击“Modify”并确保勾选环境变量选项;或者改用 Windows 自带的启动器命令
py hello.py尝试执行。 - macOS 环境:由于 macOS 没有预置名为
python的软链接,请检查是否将命令误敲成了python。换成python3 hello.py通常即可解决。如果python3也报错,需要在终端中运行xcode-select --install安装命令行开发工具,或通过官网/Homebrew 安装最新 Python。
2. 报错:No such file or directory
表现:Python 解释器正常启动,但报错输出 [Errno 2] No such file or directory: 'hello.py'。
原因与解决:
- 当前终端所处的工作目录并不是脚本所在目录。可以在 Windows 终端输入
cd查看当前路径,在 Mac 终端输入pwd查看当前路径;并分别用dir或ls查看当前目录下是否存在hello.py。 - 文件扩展名被隐藏并追加了
.txt(真实名为hello.py.txt)。请检查文件属性或使用纯文本编辑器重新另存。 - 文件名存在大小写差异(在 Linux 或某些敏感设置下)或拼写错误。
3. 报错:SyntaxError: invalid character in identifier 或 IndentationError
表现:解释器指示特定代码行存在语法或缩进问题。
原因与解决:
- 初学者常不小心在代码中混入了中文全角符号(例如中文括号
()、中文引号“”或中文冒号:)。请确保代码中的符号全部在英文输入状态下键入。 - Python 依赖严格的缩进体系。若代码中混用了 Tab 制表符与空格,可能触发
IndentationError,统一使用 4 个空格缩进即可恢复正常。
本站声明
本文内容仅供参考,不代表本站观点。转载或引用请注明出处。如发现内容问题,请通过联系我们页面反馈。













