Python 启蒙 · Day 6

判断:让程序有规则

这一节只建立一个感觉:Python 可以根据条件自己选择走哪条路。

课堂流程(45 分钟)

01

从生活规则开始

如果下雨就带伞;否则不带。先用中文说判断。

02

写第一个 if

size 大于 100 时,屏幕上写“大房子”。

03

加入 else

大房子用红色,否则用蓝色。强调二选一。

04

接回房子函数

把判断得到的 wall_color 传给 draw_house。

05

改数字验证规则

把 size 改成 80、120,观察颜色自动变化。

教师话术(照着说就行)

"if 就是如果。条件成立,就执行缩进里的代码。"

"else 就是否则。if 不成立,就走 else。"

"= 是放进去,== 才是问是不是一样。今天先用 > 来判断大小。"

"先改 size,再 Run。不要先猜答案,让 Python 告诉我们规则有没有写对。"

判断怎么讲

if

如果条件成立,就做缩进里的事。

else

否则,就做另一件事。

>

问左边是不是比右边大。

课堂代码

第一步:第一个 if

python
import turtle
 
t = turtle.Turtle()
 
size = 120
 
if size > 100:
    t.write("大房子", font=("Arial", 18, "bold"))
 
turtle.done()

第二步:自动选择颜色

python
size = 120
 
if size > 100:
    wall_color = "tomato"
else:
    wall_color = "lightblue"
 
draw_house(0, 0, size, wall_color)

完整版本

python
import turtle
 
t = turtle.Turtle()
t.speed(6)
 
def draw_house(x, y, size, wall_color):
    t.penup()
    t.goto(x, y)
    t.pendown()
    t.setheading(0)
 
    t.fillcolor(wall_color)
    t.begin_fill()
    for i in range(4):
        t.forward(size)
        t.left(90)
    t.end_fill()
 
    t.penup()
    t.goto(x, y + size)
    t.pendown()
    t.fillcolor("tomato")
    t.begin_fill()
    for i in range(3):
        t.forward(size)
        t.left(120)
    t.end_fill()
 
house_size = 120
 
if house_size > 100:
    wall_color = "tomato"
else:
    wall_color = "lightblue"
 
draw_house(-60, -80, house_size, wall_color)
 
t.hideturtle()
turtle.done()

改规则实验

给孩子的任务

把 house_size 改成 80、120,各运行一次。

把判断线从 > 100 改成 > 60,观察颜色变化。

把 tomato 和 lightblue 换成自己喜欢的颜色。

让孩子说:为什么这次走 if,另一次走 else?

完成标准

孩子知道 if 是“如果”。

孩子知道 else 是“否则”。

孩子能改 size,让颜色自动切换。

孩子知道 if 下面缩进的代码,是条件成立时才执行。

不要求展开 True / False。能用“如果、否则”解释代码就达标。

做完之后

先用互动代码剧场复习 Day 1-6 的循环、判断和缩进,再进入键盘控制。