第21课:如果...那么... —— 单分支if语句
🎯 本课目标
- 理解条件判断的概念
- 掌握if语句的基本语法
- 学会使用比较运算符
- 能够编写简单的条件判断程序
- 在实际场景中应用if语句
🤔 趣味引入:生活中的"如果...那么..."
想象一下:生活中处处是"如果...那么...":
- 🍎 如果苹果是红的,那么可以吃
- ⏰ 如果7点了,那么该起床了
- 📖 如果作业做完了,那么可以看电视
- 🍦 如果天气热,那么可以吃冰淇淋
今天,让我们一起学习编程中的"如果...那么..."——if语句!
🔧 第一部分:认识if语句
1.1 什么是if语句?
# if语句基本概念
print("🎯 认识if语句")
print("=" * 40)
print("""
if语句就像生活中的"如果...那么..."
格式:
if 条件:
要做的事情
注意:
1. if后面要有冒号(:)
2. 要做的事情前面要有4个空格(缩进)
""")
# 简单示例
weather = "下雨"
if weather == "下雨":
print("🌧️ 下雨了,记得带伞!")
print("程序继续执行...")
1.2 基本语法
# if语句基本语法
print("\n📚 if语句基本语法")
print("=" * 40)
# 语法格式
print("""
if 条件:
# 条件为True时执行的代码
# 注意缩进!缩进是Python的"大括号"
# 通常是4个空格
""")
# 实际示例
age = 12
print(f"年龄:{age}岁")
if age >= 10:
print("✅ 你可以自己骑自行车上学了!")
# 比较:有缩进 vs 无缩进
print("\n🔍 注意缩进的区别:")
print("有缩进(属于if语句):")
if age >= 10:
print("这条语句在if里面")
print("这条也在if里面")
print("\n无缩进(独立语句):")
if age >= 10:
print("这条在if里面")
print("这条不在if里面,总是执行")
⚖️ 第二部分:比较运算符
2.1 六种比较运算符
# 比较运算符
print("⚖️ 比较运算符")
print("=" * 40)
# 定义两个数字
a = 10
b = 5
print(f"a = {a}, b = {b}")
print()
# 1. 等于 ==
equal = a == b
print(f"1. 等于:{a} == {b} 是 {equal}")
# 2. 不等于 !=
not_equal = a != b
print(f"2. 不等于:{a} != {b} 是 {not_equal}")
# 3. 大于 >
greater = a > b
print(f"3. 大于:{a} > {b} 是 {greater}")
# 4. 小于 <
less = a < b
print(f"4. 小于:{a} < {b} 是 {less}")
# 5. 大于等于 >=
greater_equal = a >= b
print(f"5. 大于等于:{a} >= {b} 是 {greater_equal}")
# 6. 小于等于 <=
less_equal = a <= b
print(f"6. 小于等于:{a} <= {b} 是 {less_equal}")
2.2 比较运算符的实际应用
# 比较运算符实际应用
print("\n🎯 比较运算符的实际应用")
print("=" * 40)
# 学生成绩判断
score = 85
print(f"成绩:{score}分")
if score >= 60:
print("🎉 恭喜!及格了!")
# 温度判断
temperature = 28
print(f"\n🌡️ 当前温度:{temperature}°C")
if temperature > 30:
print("🥵 天气很热,注意防暑!")
# 身高判断
height = 150
print(f"\n📏 身高:{height}厘米")
if height >= 120:
print("🎢 身高达标,可以坐过山车!")
# 年龄判断
age = 8
print(f"\n👶 年龄:{age}岁")
if age >= 6:
print("🏫 已经到了上学的年龄")
# 余额检查
balance = 50
item_price = 30
print(f"\n💰 余额:{balance}元,商品价格:{item_price}元")
if balance >= item_price:
print("🛍️ 余额足够,可以购买!")
🎮 第三部分:if语句实践
3.1 简单条件判断
# 简单条件判断练习
print("🎮 简单条件判断练习")
print("=" * 40)
# 练习1:检查是否下雨
print("练习1:天气预报")
weather = input("今天天气怎么样?(晴/雨/阴):")
if weather == "雨":
print("🌂 记得带伞!")
# 练习2:检查作业完成情况
print("\n练习2:作业检查")
homework = input("作业完成了吗?(是/否):")
if homework == "是":
print("📚 作业完成了,可以玩一会儿!")
# 练习3:温度提示
print("\n练习3:温度提示")
temp = float(input("请输入当前温度(摄氏度):"))
if temp < 0:
print("❄️ 气温低于0度,很冷!注意保暖!")
if temp > 35:
print("🔥 气温超过35度,很热!注意防暑!")
# 练习4:分数检查
print("\n练习4:分数检查")
score = float(input("请输入你的分数(0-100):"))
if score == 100:
print("🏆 满分!太棒了!")
if score < 60:
print("💪 要加油哦,继续努力!")
3.2 综合应用:学生管理系统
# 学生管理系统 - 简单版
print("\n🎒 学生管理系统 - 简单版")
print("=" * 50)
print("欢迎使用学生管理系统!")
print("请选择操作:")
print("1. 检查出勤")
print("2. 检查作业")
print("3. 检查卫生")
choice = input("\n请输入选择(1-3):")
if choice == "1":
# 检查出勤
print("\n📅 出勤检查:")
attendance = input("学生今天出勤了吗?(是/否):")
if attendance == "是":
print("✅ 出勤正常")
if attendance == "否":
print("❌ 缺勤,需要联系家长")
elif choice == "2":
# 检查作业
print("\n📚 作业检查:")
homework = input("作业完成了吗?(是/否):")
if homework == "是":
quality = input("作业质量如何?(好/一般):")
if quality == "好":
print("⭐ 作业完成得很好!")
if homework == "否":
reason = input("为什么没完成?(忘了/不会/生病):")
if reason == "不会":
print("💡 需要老师额外辅导")
elif choice == "3":
# 检查卫生
print("\n🧹 卫生检查:")
cleanliness = input("座位干净吗?(是/否):")
if cleanliness == "是":
print("✨ 座位整洁,保持得很好!")
if cleanliness == "否":
print("🧼 需要整理座位")
else:
print("❌ 请选择1-3的数字!")
🎯 第四部分:布尔值回顾
4.1 布尔值和if语句
# 布尔值和if语句
print("🎯 布尔值和if语句")
print("=" * 40)
# 直接使用布尔值
is_sunny = True
is_weekend = False
has_homework = True
print(f"天气晴朗:{is_sunny}")
print(f"是周末:{is_weekend}")
print(f"有作业:{has_homework}")
# 布尔变量直接作为条件
if is_sunny:
print("☀️ 天气真好,可以出去玩!")
if is_weekend:
print("🎉 周末啦,可以放松一下!")
if has_homework:
print("📚 有作业要做,先完成作业吧!")
# 布尔表达式
print("\n🔍 布尔表达式:")
age = 12
can_watch_movie = age >= 12
print(f"年龄:{age}岁")
print(f"可以看电影吗?{can_watch_movie}")
if can_watch_movie:
print("🎬 可以看电影了!")
4.2 综合练习:游戏角色控制
# 游戏角色控制
print("\n🎮 游戏角色控制")
print("=" * 50)
print("欢迎来到冒险世界!")
print("你的角色属性:")
# 角色属性
health = 100
energy = 80
coins = 50
has_key = False
has_sword = True
print(f"❤️ 生命值:{health}")
print(f"⚡ 能量值:{energy}")
print(f"💰 金币:{coins}")
print(f"🔑 有钥匙:{has_key}")
print(f"⚔️ 有剑:{has_sword}")
# 场景1:检查生命值
print("\n=== 场景1:检查状态 ===")
if health < 30:
print("⚠️ 生命值低!需要治疗!")
if energy < 20:
print("😴 能量不足,需要休息!")
# 场景2:商店购物
print("\n=== 场景2:商店购物 ===")
item_price = 30
if coins >= item_price:
print(f"💰 你有{coins}金币,可以购买价值{item_price}金币的道具")
buy = input("要购买吗?(是/否):")
if buy == "是":
coins -= item_price
has_key = True
print(f"✅ 购买成功!获得钥匙!剩余金币:{coins}")
# 场景3:战斗准备
print("\n=== 场景3:战斗准备 ===")
if has_sword:
print("⚔️ 你有剑,可以进行战斗!")
enemy_health = 60
if health > enemy_health:
print("💪 你的生命值比敌人高,有优势!")
if energy > 50:
print("⚡ 能量充足,可以使用强力攻击!")
# 场景4:开门检查
print("\n=== 场景4:神秘之门 ===")
if has_key:
print("🔑 你有钥匙,可以打开神秘之门!")
open_door = input("要打开门吗?(是/否):")
if open_door == "是":
print("✨ 门打开了!里面是..."
"\n🎁 一个装满金币的宝箱!"
f"\n💰 获得100金币!")
coins += 100
print(f"现在有{coins}金币!")
else:
print("🚪 门锁着,需要钥匙才能打开")
📝 第五部分:错误处理和注意事项
5.1 常见错误
# 常见错误示例
print("⚠️ 常见错误和注意事项")
print("=" * 50)
print("\n❌ 错误1:忘记冒号")
print("""
错误代码:
if age > 10
print("可以")
正确代码:
if age > 10:
print("可以")
""")
print("\n❌ 错误2:缩进错误")
print("""
错误代码:
if age > 10:
print("可以") # 没有缩进
正确代码:
if age > 10:
print("可以") # 有缩进
""")
print("\n❌ 错误3:比较运算符用错")
print("""
错误代码:
if age = 10: # 这是赋值,不是比较
print("10岁")
正确代码:
if age == 10: # 这才是比较
print("10岁")
""")
print("\n❌ 错误4:字符串比较大小写")
print("""
错误代码:
answer = input("是否继续?")
if answer == "yes": # 用户输入"Yes"就不匹配
正确代码:
if answer.lower() == "yes": # 统一小写
# 或者
if answer in ["yes", "Yes", "YES"]:
""")
5.2 调试练习
# 调试练习
print("\n🔧 调试练习")
print("=" * 40)
print("找出下面代码中的错误:")
# 有错误的代码
buggy_code = '''
# 错误代码示例
age = 12
if age = 12
print("你12岁")
weather = "sunny"
if weather = "sunny"
print("天气晴朗")
score = 85
if score > 90
print("优秀")
'''
print(buggy_code)
input("\n按回车查看正确答案...")
# 正确的代码
correct_code = '''
# 正确的代码
age = 12
if age == 12: # 要用==,要有冒号
print("你12岁")
weather = "sunny"
if weather == "sunny": # 要用==,要有冒号
print("天气晴朗") # 要有缩进
score = 85
if score > 90: # 要有冒号
print("优秀")
'''
print("✅ 正确的代码:")
print(correct_code)
📅 下节课预告
第22课:二选一的智慧——if-else语句
下节课你将学习:
- 当条件不满足时要做什么
- if-else语句的用法
- 二选一的决策场景
- 制作只能二选一的程序
- 避免"什么都不做"的情况
预习思考:
- 如果条件不满足,程序应该做什么?
- 生活中哪些是"二选一"的情况?
- 如何让程序总有回应,不"沉默"?
💬 给家长的话
亲爱的家长:
今天孩子开始学习编程中非常重要的概念——条件判断。这是培养逻辑思维的关键一步,能帮助孩子理解如何让程序"做决定"。
孩子今天学会了:
- ✅ 理解if语句的基本概念
- ✅ 掌握比较运算符的使用
- ✅ 编写简单的条件判断程序
- ✅ 注意代码缩进和语法细节
- ✅ 在实际场景中应用条件判断
条件判断的重要性:
| 概念 | 在编程中的应用 | 实际意义 | 思维培养 |
|------|---------------|---------|---------|
| 条件判断 | 让程序根据不同情况执行不同操作 | 决策能力 | 逻辑思维 |
| 比较运算符 | 比较大小、判断相等 | 精确判断 | 数学思维 |
| 布尔逻辑 | 判断真假,做出决策 | 判断力 | 分析思维 |
| 代码结构 | 缩进、冒号等语法细节 | 规范性 | 严谨性 |
您可以这样做:
生活应用:
- 日常决策:和孩子讨论生活中的"如果...那么..."
- 游戏设计:一起设计简单的条件判断游戏
- 学习规划:用条件判断帮助制定学习计划
- 家务分工:用条件判断安排家务
思维训练:
- 讨论:什么时候用"如果",什么时候用"那么"?
- 思考:生活中的哪些决策可以用编程描述?
- 实践:设计一个简单的自动回复系统
- 改进:如何让判断更精确?
温馨提示:
- 条件判断是编程的核心,要确保理解透彻
- 注意缩进,这是Python的"语法"
- 鼓励孩子多思考不同的判断条件
- 通过实际应用加深理解
🏆 今日成就
完成了今天的学习,你:
🤔 理解了条件判断
⚖️ 掌握了比较运算符
🎮 编写了if语句程序
🔧 注意了代码规范
💡 培养了逻辑思维
挑战任务:
- 设计一个天气提示程序
- 制作简单的年龄检查工具
- 创建游戏状态检查器
- 改进现有的判断程序
🌟 编程心法
编程是逻辑的艺术
if是决策的开始
条件是指挥棒
比较是尺子
布尔是裁判
缩进是纪律
从简单的如果开始
走向复杂的智能
每一步判断
都是思维的训练
每一个条件
都是逻辑的体现
记住:学会条件判断,你的程序就有了"大脑",能根据情况做出决策。这是从简单脚本到智能程序的第一步!
第21课结束。你现在已经掌握了条件判断的基础!
实践任务:
1. 设计天气提示程序
2. 制作年龄检查工具
3. 创建状态监控器
4. 改进判断逻辑
下节课,让我们学习二选一的智慧,让程序总有回应!
第22课见!🤔