第 2 周,共 8 周
变量与数据类型
学生给程序装上记忆。他们把词语和数字存进变量,再用它们拼出句子,于是改一行就能改变整个程序。这是通向一个能叫出玩家名字、能记分的游戏的第一步。
- 预计时间
- 50-60 分钟
- 项目
- 自我介绍生成器
核心思路
变量就是贴了标签的盒子:你把一个值放进去一次,之后想用这个值的地方写它的名字就行。文字要加引号(字符串),数字不用。有了 f-string,你可以把变量直接塞进句子里,于是程序可以叫出玩家的名字,而不是每次都说同一句话。
你将学到什么
- 用 = 创建一个变量并把值存进去。
- 分清文字(字符串)和数字。
- 用 f-string 把变量放进打印出来的句子里。
- 找出并修好一个用错了的变量。
新词汇
- 变量
- 一个有名字的盒子,用来保存值,方便以后再用。
- 赋值
- 用 = 号把一个值放进变量里。
- 整数
- 没有小数点的整数,比如 10。
- f-string
- 以 f 开头的句子,{ } 里的内容会用变量的值填进去。
项目:自我介绍生成器
编辑下面的初始代码,然后按“运行”看看效果。想回到原始代码,随时点“重置初始代码”。
main.py
终端
运行你的程序来查看输出。
预期输出
玩家:Alex
年龄:10
最喜欢的游戏:足球小挑战
加一个叫 score 的变量并设为 0,然后打印一行,比如 得分:0。在最后的游戏里,你就会这样记分。
调试挑战
这段本该打印「我的名字是 Alex」,结果却打印出 name 这个词。变量的值没有被填进去。在 f-string 里,name 两边得加上什么?
有错误的代码
name = "Alex"
print(f"我的名字是 name。")查看答案隐藏答案
给变量加上花括号,Python 才会填入它的值:
print(f"我的名字是 {name}。")拓展挑战
再加一个数字变量 high_score,并打印一句同时用到 name 和 high_score 的话,比如:Alex 的最好成绩是 25。
回顾思考
你只改了一个变量,程序说的话就变了。这为什么比在每一行里一遍遍打玩家的名字更好?
教师笔记
强化两条规则:字符串要加引号,数字不加;在 f-string 里,变量必须加花括号才有效。经典的 bug 就是给变量名加引号,结果被原样打印出来,值得让学生自己发现。变量名保持小写且见名知意(用 score,不要用 x)。
要带这节课吗?请查看 教师与图书馆员指南 ,里面有上课流程、常见错误,以及一个不用电脑的备用活动。
这节课完成了吗?标记为已完成,解锁下一周。