学习目标:独立运行一个 Python 文件,修改输出,并区分编辑器、终端和解释器。
前置:会创建文件夹、保存文本文件。预计 40 分钟。
本课交付:终端中的两行输出和你修改后的版本。
最终的小助手要回答“今天学了多久”。先让它说出一条固定记录:Python,25 分钟。此时不需要输入框、数据库,也不需要懂所有语法。
三个工具各做一件事:编辑器保存代码;终端接收运行命令;Python 解释器读取代码并执行。浏览器里的课程页面只是讲义,不会替你执行 Python。
从 学习路线 下载并解压教材。用文件管理器打开 assets/starter-lab/,Windows 可在地址栏输入 powershell 后回车,终端就从这个文件夹启动。
先输入:
py -3 --version
预期看到类似 Python 3.12.8 的版本号,3.10 及以上即可,不要求和示例小版本完全相同。若没有 Python,去 Python 官方下载页 安装后重新打开终端,再检查版本。
确认当前目录:PowerShell 输入 Get-Location,macOS/Linux 输入 pwd。输出的路径应当以 starter-lab 结尾。目录下应能看到 tracker.py、versions 等文件。
打开 versions/01_hello.py,完整内容只有两行:
print("学习记录小助手")
print("Python:25 分钟")
先在纸上写下你认为屏幕会显示什么,再运行:
py -3 versions/01_hello.py
预期:
学习记录小助手
Python:25 分钟
命令结束后出现新的输入提示符,说明这个程序已执行完。暂时不用打开浏览器。
命令中的 py -3 选择 Python 3;后面的路径告诉它读取哪个文件。解释器从第一行执行,遇到 print(...) 就把括号里的值显示到终端,然后执行第二行。
"Python:25 分钟" 是字符串,即一段文本。两边的引号标出文本边界,显示时不包含这两个引号。括号是调用函数的语法:这里调用的是 Python 自带的 print。
“输出一行”是动作,“Python:25 分钟”是数据。先分清这两件事,后面才容易理解为什么数据能变化而动作不必重写。
把第二行改成:
print("阅读:15 分钟")
保存文件,再运行同一条命令。第二行应变为“阅读:15 分钟”,第一行保持不变。若终端还是旧内容,先确认保存,再检查运行的是否是刚编辑的那份文件。
接着交换两行顺序,预测输出顺序,重新运行验证。程序在这里按照书写顺序执行,不会根据中文含义自动排序。
| 现象 | 它说明什么 | 先检查什么 |
|---|---|---|
找不到 py | 解释器命令不可用 | 是否安装、是否重开终端;其他系统用 python3 |
can't open file | 文件路径没找到 | 当前目录、文件名、是否真的解压 |
SyntaxError | 代码不符合语法 | 是否把英文引号/括号写成全角字符,是否缺一半引号 |
| 输出没变 | 可能运行的是旧内容 | 编辑器是否保存、终端路径是否对应 |
Windows 可能隐藏扩展名。自己新建文件时确认它不是 01_hello.py.txt。
新建 my_first.py,输出你的学习主题和今天的目标分钟数。不要复制原文件名,自己输入一遍运行命令。
验收:能连续运行两次;每次有两行可解释的输出;能指出命令中的解释器和文件路径。保存命令与输出到自己的学习笔记。
答案:文件只保存代码,解释器在这次运行时才重新读取它;之前已完成的运行不会自动改变。
25 出现在这句字符串里,还不能直接拿它做加法?
答案:它目前只是整段文本中的两个字符,还没有作为独立数值参与计算。下一课会把分钟数单独保存。
现在每换一个主题和时长都得改整句文本。下一课把数据放进变量,再让程序算“距离目标还差多少”。