if-else 与 if-elif-else
掌握双分支和多分支条件判断
- 掌握 else 分支
- 掌握 elif 多条件判断
- 处理多种实际场景
if-else:二选一
else 处理条件不满足的情况:
if-elif-else:多选一
elif 是 else if 的缩写,用来检查多个条件。从上到下挨个匹配,匹配中一个就不会再往下走了:
条件从上往下检查,一旦匹配就跳出。所以严格的条件放前面:先判断 >=90,再判断 >=60。如果反过来先写 >=60,那 95 分也会匹配到 >=60 就停了。
score = 95
if score >= 60:
print("及格")
elif score >= 90:
print("优秀")
else:
print("不及格")嵌套条件
嵌套可以用 and 简化:
嵌套超过 3 层是代码质量的警报信号。资深开发者用「提前返回」(early return)来减少嵌套:先处理异常/边界情况并 return,主逻辑就不需要缩进。比如先 if not logged_in: return,再写正常逻辑,而不是把所有代码包在 if logged_in: 里。这叫「卫语句」模式,能让代码扁平、易读。记住:扁平优于嵌套。
score=85 会输出什么? if >=90: A elif >=80: B elif >=60: C else: D
elif 的作用是?
score = 85,会进入哪个分支?
资深工程师加餐
底层原理 · 大厂视角 · 工程经验,点卡片展开
Python 里整数、字符串甚至函数都是对象,堆在内存里;变量不是装东西的盒子,而是一张贴在对象上的「名字标签」(引用)。id(x) 看对象身份,is 比身份、== 比值。CPython 会缓存 -5~256 的小整数,所以 a=1;b=1 时 a is b 为 True,但 a=300;b=300 未必。结论:判断值是否相等永远用 ==,判断是不是 None 才用 is。
挑战任务
成绩等级
输入分数 85,输出对应等级(优秀/良好/及格/不及格)。
课后作业
BMI 计算器
身高1.75体重70,计算BMI并判断偏瘦/正常/偏胖/肥胖。