大家好!我是哒哒咚咚!欢迎来到第三天。
昨天的数据类型和运算符都掌握了吗?我们用 f-string 做了漂亮的自我介绍,还用 Python 做了一次数学计算小能手。今天,我们要给程序装上“大脑”——让它学会根据不同的情况,做出不同的选择。
今日学习目标:
理解什么是条件判断,以及它为什么重要
掌握 if、elif、else 语句的基本用法
学会使用缩进来定义代码块
组合使用逻辑运算符(and、or、not)
写几个真正有“智能”的互动小程序
让我们开始今天的魔法之旅吧!
1. 让程序学会思考:为什么需要条件判断?
到目前为止,我们的程序都是“直线”执行的——从头到尾,每一行代码都老老实实地跑一遍。但现实世界充满了选择:如果下雨,我就带伞;如果温度低于10度,我就穿秋裤;如果考试及格,我就庆祝一下……
在编程里,这种“如果……就……”的逻辑,就是条件判断。它让程序有了分支,能够应对不同的情况。
2. 第一个判断语句:if
if 的英文意思就是“如果”。它的语法结构非常简单:
python
if 条件:# 条件为真时,执行的代码块print("条件成立了!")⚠️ 重点注意:
冒号:if 条件后面一定要跟一个英文冒号 :。
缩进:属于 if 的代码,必须缩进(通常是按一次Tab键,或者4个空格)。这是Python用来区分代码块的方式,非常重要!
来,看个例子:
python
age =18if age >=18:print("你已经成年了,可以为自己负责啦!")print("这句也是if里面的哦。")print("我不管条件成不成立,都会执行。")运行一下,你会发现,只有当 age >= 18 这个条件为 True 时,那两个缩进的 print 才会执行。最后一个 print 因为跟 if 是同一级别,所以永远会执行。
3. 两条路:if...else...
生活不只有“如果”,还有“否则”。如果条件成立,做A;否则,做B。这时候就需要 else 出场了。
python
age =16if age >=18:print("欢迎光临,成人区在二楼。")else:print("对不起,未成年人不允许进入。")print("你可以去旁边的游乐场看看。")else 后面直接跟冒号,不需要条件。它的代码块也是缩进的。
4. 多条路:if...elif...else...
现实世界往往更复杂,不止两条路。比如:90分以上是A,80-89分是B,70-79分是C,60-69分是D,60分以下是F。这时候就需要 elif(它是“else if”的缩写)来帮忙了。
python
score =85if score >=90: grade ="A"print("太棒了!你是学霸!")elif score >=80: grade ="B"print("优秀!继续加油!")elif score >=70: grade ="C"print("良好,还可以更好哦。")elif score >=60: grade ="D"print("及格了,要努力啦!")else: grade ="F"print("不及格,别灰心,下次一定行!")print(f"你的等级是:{grade}")注意:
5. 组合条件:逻辑运算符
有时候,一个判断需要满足多个条件。比如:要同时满足“年龄大于18岁” 并且 “有驾照”才能开车。或者,只要满足“是会员” 或者 “消费满200元”就能打折。
这就需要用到逻辑运算符来组合布尔值:
看几个例子:
python
age =20has_license =Trueis_member =Falsespent =150# 检查是否能开车 (必须成年且有驾照)if age >=18and has_license:print("你可以合法开车上路。")else:print("你不能开车。")# 检查是否能打折 (会员 或者 消费满200)if is_member or spent >=200:print("恭喜,可以享受折扣!")else:print("抱歉,不满足打折条件。")# 使用not取反is_weekend =Falseifnot is_weekend:print("今天是工作日,要好好上班哦。")6. 小练习:当个真正的程序员
把今天学的用起来,你会发现写程序变得更有趣了!
奇偶数判断器:让用户输入一个整数(可以用 input() 函数),程序判断并输出这个数是奇数还是偶数。(提示:偶数能被2整除,即 num % 2 == 0)
BMI计算器:输入身高(米)和体重(公斤),计算BMI指数(bmi = 体重 / 身高 ** 2),并根据以下标准输出身体状况:
BMI < 18.5:偏瘦
18.5 <= BMI < 24:正常
24 <= BMI < 28:偏胖
BMI >= 28:肥胖
石头剪刀布小游戏(挑战版):你和电脑(随机出拳)玩一局,判断输赢。
提示1:需要导入 import random,然后用 computer = random.choice(["石头", "剪刀", "布"]) 让电脑随机选一个。
提示2:先考虑你赢的所有情况(比如你出石头,电脑出剪刀;你出剪刀,电脑出布;你出布,电脑出石头),用 or 连接。
7. 今日总结
恭喜你!你的程序今天终于“活”起来了,拥有了最基础的智能:
学会了用 if、elif、else 来控制程序的流程。
理解了Python用缩进来划分代码块,这是Python最独特的风格。
学会了用 and、or、not 来组合复杂的判断条件。
明天,我们将学习如何让程序重复执行某件事情——也就是循环。有了条件判断和循环,你就能写出真正解决实际问题的程序了!
今天的练习很有趣,一定要亲手敲一敲代码。遇到 input() 获取用户输入时,记得它得到的是字符串,如果需要数字,要用 int() 或 float() 转换一下哦。
有任何问题,或者写出了有趣的石头剪刀布程序,欢迎在评论区分享!我们明天见!🚀