数学课上,老师在黑板上写下一道长长的算式:18 × 37 + 56 ÷ 8 - 9,让大家心算。小刚埋头算了半天,刚算到一半就乱了。
老师笑着说:这种又长又容易算错的题,最适合交给电脑!只见老师敲了几行代码,屏幕立刻跳出答案:665。
小刚眼睛亮了:电脑怎么知道 18、37 这些数放在哪里?老师回答:因为我给它们都起了名字,装进了「变量盒子」里。
今天,我们就来学变量,造一台属于你自己的计算器!
给数据起个名字(变量),再让电脑做加减乘除——亲手造一个计算器!
先看这节课教什么、怎么分配 120 分钟,老师心里有底,课堂节奏就不乱。
| 时间 | 环节 | 做什么 / 师生互动要点 |
|---|---|---|
| 0–5 | 候课 · 复习上节 | 打开 Python,快速打印一句自我介绍,唤醒 print 记忆。 |
| 5–12 | 快问快答 | 上节课三个问题:print 干嘛的?字符串为什么要引号?两个 print 会打在同一行吗? |
| 12–22 | 情境导入 | 老师说「老师的心算不如电脑快」,出几道大数口算题让学生心算,再让提前写好的 Python 计算器秒出答案。 |
| 22–38 | 变量 = 贴标签的盒子 | 用盒子教具演示赋值;讲解变量命名规则;黑板演示 age = 9 再 print(age)。 |
| 38–55 | 五种运算 | 逐个演示 + - * / // % **;重点讲「/ 的结果是小数」「% 是分苹果剩下的」两个生活比喻。 |
| 55–80 | 示范代码 + 上机 | 学生亲手敲「我的计算器」(示例2)并改 num1/num2 反复运行;老师巡视纠错。 |
| 80–95 | 课堂练习 A/B | 练习 a=7 b=3 四则运算;基础快的同学做圆的周长面积(示例3参考)。 |
| 95–105 | 闯关小测 | 口答抢答:// 和 / 有什么区别?7%3=? 2**3=? 等。 |
| 105–115 | 总结 · 保存作品 | 齐读口诀;保存为「第2课_计算器.py」;展示 1~2 位同学的作品。 |
| 115–120 | 布置作业 · 预告 | 作业说明;预告第 3 课:让程序停下来「听」用户输入。 |
时间轴把 2 小时切成 8 段:复习→导入→讲解→示范→上机→练习→检测→小结,每段都有明确产出。
先用 5 分钟把上节课的记忆叫醒,再用故事和类比把新知识挂到孩子已有的经验上。
问 1:上节课我们让电脑「开口说话」,用的是什么函数?
→ print(),输出文字到屏幕。
问 2:文字(字符串)为什么要加引号?
→ 加引号电脑才知道是文字;不加会被当成名字去找,找不到就报错。
问 3:print("苹果") 和 print("香蕉") 会输出在同一行吗?
→ 不会,每个 print 自动换行。
数学课上,老师在黑板上写下一道长长的算式:18 × 37 + 56 ÷ 8 - 9,让大家心算。小刚埋头算了半天,刚算到一半就乱了。
老师笑着说:这种又长又容易算错的题,最适合交给电脑!只见老师敲了几行代码,屏幕立刻跳出答案:665。
小刚眼睛亮了:电脑怎么知道 18、37 这些数放在哪里?老师回答:因为我给它们都起了名字,装进了「变量盒子」里。
今天,我们就来学变量,造一台属于你自己的计算器!
把数字或文字装进盒子,标签写名字;想用的时候喊名字,盒子就把东西给你。
赋值与取值7 ÷ 2 用 / 算是 3.5;用整除 // 是 3(只拿整块);用 % 是余下的 1 块。
三种除法名字要让人一看就懂:age、score、num1;不能以数字开头,不能带空格。
命名规则整数是没有小数点的数;小数叫浮点数,除法 / 的结果常常是小数。
数据类型分小块讲透语法点,每一块都配生活类比 + 要点小结,讲完立刻口头小试。
变量就像一个贴了标签的盒子,你可以把数字或文字放进去。用等号 = 来赋值。
写法:age = 9,就是把数字 9 放进名叫 age 的盒子里。以后想用这个数字,直接写 age 就行。
盒子的东西可以换:再写 age = 10,盒子里的 9 就被 10 替换了。所以叫「变量」——会变的量。
变量名规则:用英文字母、数字、下划线,不能以数字开头,中间不能有空格,最好起个能看懂的名字(age 比 a 好)。
Python 里的运算符:加法 +,减法 -,乘法 *(不是 ×),除法 /(不是 ÷)。
键盘上没有 × 和 ÷,所以乘法用星号 *,除法用斜杠 /。这点和数学课不一样,要记牢!
运算顺序和数学一样:先乘除后加减,括号最优先。比如 2 + 3 * 4 = 14,而 (2 + 3) * 4 = 20。
打印运算结果可以直接写:print(15 + 4) 会输出 19;也可以先存进变量再打印。
除了四则运算,还有三个「升级技能」:// 整除、% 取余、** 乘方。
整除 //:只取整数部分,不要余数。比如 7 // 2 = 3(7 里有 3 个完整的 2)。
取余 %:只要余数。比如 7 % 2 = 1(分完 3 个 2 还剩 1)。生活里分糖果、判断奇偶全靠它。
乘方 :表示「几次方」。2 ** 3 = 8(2×2×2)。注意是两个星号连着写。
整数就是没有小数点的数,比如 1、10、-5。小数在 Python 里叫「浮点数」,比如 3.14、0.5。
除法 / 的结果默认是小数,即使能整除:6 / 2 的结果是 3.0,不是 3。
为什么?因为电脑很「老实」,它想告诉你 6 除以 2 确实能除尽,但除法统一按小数算更安全。
整数的加减乘(只要不除)结果还是整数;一旦出现小数参与,结果就是浮点数。
老师先带读代码、讲注释,再让学生亲手敲一遍——敲错正好学习调试。
# 给数据起名字:变量
age = 9 # 把数字9放进叫age的盒子
name = "小明" # 文字也可以装进盒子
print(age) # 用名字取出数字
print(name) # 用名字取出文字
# 盒子里的东西可以换
age = 10
print("明年我就" + str(age) + "岁啦") # 数字拼进文字要加str()9
小明
明年我就10岁啦🤔 想一想:如果没有 str(),直接写 print("明年" + age + "岁") 会怎样?试完再改回来。
# 第2课:简单计算器
# 功能:对两个数字进行加减乘除运算
num1 = 15 # 定义第一个变量
num2 = 4 # 定义第二个变量
# 加法
print(str(num1) + " + " + str(num2) + " = " + str(num1 + num2))
# 减法
print(str(num1) + " - " + str(num2) + " = " + str(num1 - num2))
# 乘法(注意:乘号是 *)
print(str(num1) + " * " + str(num2) + " = " + str(num1 * num2))
# 除法(结果是浮点数)
print(str(num1) + " / " + str(num2) + " = " + str(num1 / num2))15 + 4 = 19
15 - 4 = 11
15 * 4 = 60
15 / 4 = 3.75🤔 想一想:为什么每行都要写 str(num1)?去掉 str 只留 num1 试试,看看报什么错。
# 整除、取余、乘方三兄弟
num1 = 15
num2 = 4
print("整除:" + str(num1 // num2)) # 15里有几个完整的4
print("取余:" + str(num1 % num2)) # 分完还剩几
print("乘方:" + str(num1 ** 2)) # 15的平方整除:3
取余:3
乘方:225🤔 想一想:分 17 颗糖给 5 个小朋友,每人几颗、剩几颗?用 // 和 % 各写一行代码验证。
# 已知半径求圆的周长和面积
# 公式:周长 = 2 * pi * r 面积 = pi * r * r
r = 5 # 半径
pi = 3.14 # 圆周率(近似值)
c = 2 * pi * r # 周长
s = pi * r * r # 面积(r*r 就是 r 的平方)
print("半径是" + str(r) + "的圆:")
print("周长 = " + str(c))
print("面积 = " + str(s))半径是5的圆:
周长 = 31.4
面积 = 78.5🤔 想一想:面积公式里的 r * r 能不能写成 r ** 2?两种写法结果一样吗?
把最容易翻车的写法先亮出来,见一次、错一次、就会了。
print("我" + 9 + "岁")print("我" + str(9) + "岁")1num = 5
my age = 9num1 = 5
my_age = 9age + 1 = ageage = age + 1基础题人人过关,进阶题鼓励尝试,挑战题给学有余力的孩子。参考答案给老师做巡视对照。
收尾前 10 分钟,用口答 / 举手抢答把今天的关键点过一遍。
age = 9 这句话,是把 9 放进名字叫什么的盒子里?
💡 = 表示赋值:右边的东西装进左边名字的盒子。
Python 里乘法用什么符号?为什么?
💡 除号是斜杠 /,同样因为键盘上没有 ÷。
7 // 2 和 7 % 2 的结果分别是多少?
💡 // 拿整块,% 拿剩下的。
6 / 2 的结果是 3 还是 3.0?
💡 除法 / 的结果默认是浮点数(小数)。
2 ** 3 等于多少?它叫什么运算?
💡 ** 是乘方,两个星号连着写。
用一句话带走今天的内容;作业分层布置,作品记得保存进成长档案。