安迪Python

V1

2022/08/28阅读:16主题:默认主题

22. if...elif...else 多向判断

22. if...elif...else 多向判断

1. if...else...语句复习

1.条件判断语句流程图
1.条件判断语句流程图

在上一节中,我们学习了if...else...语句。

如果条件成立就执行if语句后面的代码块。

如果条件不成立就执行else语句后面的代码块。

if...else...语句是二选一,要么这样,要么那样。

但其实是生活中,n选一的情况更为多见。

【举例说明】

猜体重问题可能输出的3种情况:
1.猜多了;
2.猜少了;
3.猜对了。

我们的BMI值存在多种标准:

2.bmi
2.bmi

像这样n选一的条件判断语句,怎么写呢?

2. 体验代码

age = int(input("猜猜我今年多少岁:"))

# 如果if语句条件成立,输出【你猜大了】!
if age > 18 :
    print("你猜大了!")

# 如果elif语句条件成立,输出【你猜小了!】
elif age < 18 :
    print("你猜小了!")

# 如果if,elif语句都不成立,输出【你猜对了!】
else:
    print("你猜对了!")

【终端输出】

你猜对了!

像这样n选一的条件判断语句,我们通常用if...elif...else...语句来实现。

elif是else if的缩写。

【代码解析】

第1,2行代码:如果输入的数字大于18,输出你猜大了。
第3,4行代码:如果输入的数字小于18,输出你猜小了。
第5,6行代码:否则输出你猜对了(一个整数不大于18,也不小于18,那它就是18)。

if后的语句是当if判断条件成立时,执行的操作。

elif后的语句是当if判断不成立时,再判断一次,如果成立,执行的操作。

else后的语句是当以上所有判断条件都不成立时,执行的操作。

3.条件判断语句流程图
3.条件判断语句流程图

3. 代码执行的顺序

age = 20
if age > 18 :
    print("你猜大了!")
elif age < 18 :
    print("你猜小了!")
else:
    print("你猜对了!")
print("程序结束!")

【终端输出】

你猜大了!
4.代码的执行顺序
4.代码的执行顺序

age=20,程序执行第1,2,3,8行代码。

age=15,程序执行第1,2,4,5,8行代码。

age=18,程序执行第1,2,4,6,7,8行代码。

当条件满足时,程序就不会执行剩余的判断语句,程序自动跳出。

elif 语法和if语法是一致的,重点关注英文冒号和缩进即可。

5.代码顺序2
5.代码顺序2

4. 课堂练习

2.bmi
2.bmi

【题目要求】

  1. 从终端输入一个bmi值(养成习惯,每次输入数据时要考虑需要的数据类型)。
  2. 对照上面的图片进行判断,并输出对应的标准。
  3. 图片中没有小于18.5的指标,代码中增加了一个判断,当bmi小于18.5时,输出【太瘦了!】

【参考答案】

bmi = float(input("请输入你的bmi值:"))
if 18.5 <= bmi < 25 :
    print("正常!")
elif 25 <= bmi < 30 :
    print("超重!")
elif 30 <= bmi < 35 :
    print("1度肥胖!")
elif 35 <= bmi < 40 :
    print("2度肥胖!")
elif bmi >= 40 :
    print("3度肥胖!")
else:
    print("太瘦了!")

【终端输出】 3度肥胖!

5. 总结

6.条件判断语句总结
6.条件判断语句总结

分类:

后端

标签:

Python

作者介绍

安迪Python
V1