• #1 <font style="color:rgb(71, 101, 130);">if</font> 语法">#1 <font style="color:rgb(71, 101, 130);">if</font> 语法
    • #1.1 <font style="color:rgb(71, 101, 130);">if</font>">#1.1 <font style="color:rgb(71, 101, 130);">if</font>
    • #1.2 <font style="color:rgb(71, 101, 130);">if...else</font>">#1.2 <font style="color:rgb(71, 101, 130);">if...else</font>
    • #1.3 <font style="color:rgb(71, 101, 130);">if...elif...else</font>">#1.3 <font style="color:rgb(71, 101, 130);">if...elif...else</font>
    • #1.4 嵌套 <font style="color:rgb(71, 101, 130);">if</font> 语句">#1.4 嵌套 <font style="color:rgb(71, 101, 130);">if</font> 语句
  • #2 总结">#2 总结
  • #3 练习题">#3 练习题

    4流程控制 - 图1

    首页

    课程地图 成长学园 创意集市 高校合作 企业服务 技术服务

    学习教程

    今天,我们要进入到第四关内容的学习,流程控制! 在流程控制内容开始之前, 我们一起来回顾下上一关内容:

    4流程控制 - 图2

    我们一起进入本次课程内容的学习。 我们一起来了解下牛郎织女的故事: 传说古代天帝的孙女织女擅长织布,每天给天空织彩霞。她讨厌这枯燥的生活,就偷偷下到凡间,私自嫁给河西的牛郎,过上男耕女织的生活。此事惹怒了天帝,把织女捉回天宫,责令他们分离,只允许他们每年的农历七月七日在鹊桥上相会一次。 织女因为厌烦了每天织布的枯燥生活,选择下到凡间。 在我们的生活中,也经常要做大大小小的各种决策。影响我们做出决策的因素有很多,一般是当某些条件满足时,我们会做出决策 A;条件不满足时,做出决策 B。就比如像织女一样,因为感觉到每天织布,生活枯燥乏味,做出了下到凡间的决策;如果生活不枯燥,织女做的决策可能就是还留在天宫快乐地生活。 计算机的执行过程也是类似的,计算机不一定都是从上到下逐条执行指令,有些时候计算机也会对一些条件进行评估,当评估结果为 <font style="color:rgb(71, 101, 130);">True</font> 时(满足某些条件),执行某个代码块;当评估结果为 <font style="color:rgb(71, 101, 130);">False</font> 时(不满足某些条件),执行另一个代码块。在 Python 中,可以使用 <font style="color:rgb(71, 101, 130);">if ... else</font> 语句来完成上述代码流程的控制。 比如:织女厌烦了每天织布的枯燥生活,选择下到凡间。就可以用 <font style="color:rgb(71, 101, 130);">if</font> 语句来实现:
    1. # 织女的生活状态是厌烦了每天织布的枯燥生活
    2. living_conditions = '织女厌烦了每天织布的枯燥生活'
    3. if living_conditions == '织女厌烦了每天织布的枯燥生活':
    4. print('织女下到凡间')
    1
    2
    3
    4

    #1 <font style="color:rgb(71, 101, 130);">if</font> 语法

    #1.1 <font style="color:rgb(71, 101, 130);">if</font>

    4流程控制 - 图3

    我们一定要注意语法规范:<font style="color:rgb(71, 101, 130);">if</font> 条件语句后面要加 <font style="color:rgb(71, 101, 130);">:</font>,且是英文状态下的冒号 <font style="color:rgb(71, 101, 130);">:</font><font style="color:rgb(71, 101, 130);">if</font> 后的语句要缩进四个空格,这是因为语句块 1 是在满足 <font style="color:rgb(71, 101, 130);">if</font> 条件下要执行的,因此要有缩进。 织女下凡之后,认识了牛郎,也更加注重身材管理,我们通过 <font style="color:rgb(71, 101, 130);">if</font> 条件语句来帮助织女更好地进行身材管理吧! 现在我们假设织女的身高是 1.55 米,体重是 65 公斤,通过 BMI 的计算公式,计算出 BMI,依此来判断织女是否超重。
    1. weight = 65
    2. height = 1.55
    3. BMI = float(weight) / (float(height) * float(height))
    4. if BMI >= 25:
    5. print("BMI=", BMI)
    6. print("织女体重过重")
    1
    2
    3
    4
    5
    6
    7 我们首先来看上面语句中需要注意的两点:
    1. 不要忘记 <font style="color:rgb(71, 101, 130);">if</font> 语句后面的冒号<font style="color:rgb(71, 101, 130);">:</font>,如果不带冒号会报语法错误。
    2. Python 语言通过缩进来标识代码块,在上述例子中,<font style="color:rgb(71, 101, 130);">print("BMI=", BMI)</font> <font style="color:rgb(71, 101, 130);">print("织女体重过重")</font> 属于同一个代码块,当 <font style="color:rgb(71, 101, 130);">if</font> 语句的条件成立时,<font style="color:rgb(71, 101, 130);">print("BMI=", BMI)</font> <font style="color:rgb(71, 101, 130);">print("织女体重过重")</font> 都会被执行。通过缩进来指定代码块是 Python 的一大特色。
    织女每天严格控制体重,但是她希望对自己的体重情况有更清晰的认识,而不是仅仅知道自己的体重是否超重?这个时候我们就可以通过 <font style="color:rgb(71, 101, 130);">if...else...</font> 来帮助织女啦! 我们一起看下 <font style="color:rgb(71, 101, 130);">if...else...</font> 的语法规则:

    #1.2 <font style="color:rgb(71, 101, 130);">if...else</font>

    4流程控制 - 图4

    我们来进行稍微精细一点的划分,帮助织女更好的掌握自己的体重情况: 织女在知道自己体重过重之后,非常沮丧,沮丧之后重振旗鼓,执行了非常严格的饮食管理和运动,并且咬牙坚持了很长一段时间,终于体重瘦到了 40 公斤,下面我们用 <font style="color:rgb(71, 101, 130);">if...else...</font> 语句来帮助织女判断现在她的身材状态:
    1. weight = 40
    2. height = 1.55
    3. BMI = float(weight) / (float(height) * float(height))
    4. if 18.5 <= BMI < 25:
    5. print("BMI=", BMI)
    6. print("织女体重正常")
    7. else:
    8. print("织女体重过重或过轻")
    1
    2
    3
    4
    5
    6
    7
    8
    9 大家一定要记得 <font style="color:rgb(71, 101, 130);">if</font> 后面的冒号和 <font style="color:rgb(71, 101, 130);">else</font> 后面的冒号,以及 <font style="color:rgb(71, 101, 130);">if</font> 条件下的语句块和 <font style="color:rgb(71, 101, 130);">else</font> 下的语句块的缩进哟!织女看到结果后,不清楚自己的体重到底是过重还是过轻,我们有什么办法可以帮助她进一步判断么?这个当然有啦!我们可以使用 <font style="color:rgb(71, 101, 130);">if...elif...else</font> 语句来解决!

    #1.3 <font style="color:rgb(71, 101, 130);">if...elif...else</font>

    4流程控制 - 图5

    <font style="color:rgb(71, 101, 130);">elif</font> 语句块可出现一次或多次。

    下面我们针对织女的需求,进行体重过重和过轻的进一步区分:
    1. weight = 40
    2. height = 1.55
    3. BMI = float(weight) / (float(height) * float(height))
    4. if 18.5 <= BMI < 25:
    5. print("BMI=", BMI)
    6. print("织女体重正常")
    7. elif BMI < 18.5:
    8. print("BMI=", BMI)
    9. print("织女体重过轻")
    10. else:
    11. print("BMI=", BMI)
    12. print("织女体重过重")
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13 由于 <font style="color:rgb(71, 101, 130);">elif</font> 语句块可出现多次,我们还可以进行细分,帮助织女更详细的掌握自己的体重情况。
    1. weight = 40
    2. height = 1.55
    3. BMI = float(weight) / (float(height) * float(height))
    4. if BMI < 15:
    5. print("BMI=", BMI)
    6. print("织女非常严重的体重不足")
    7. elif 15 <= BMI < 16:
    8. print("BMI=", BMI)
    9. print("织女严重体重不足")
    10. elif 16 <= BMI < 18.5:
    11. print("BMI=", BMI)
    12. print("织女体重过轻")
    13. elif 18.5 <= BMI < 25:
    14. print("BMI=", BMI)
    15. print("织女体重正常")
    16. elif 25 <= BMI < 30:
    17. print("BMI=", BMI)
    18. print("织女体重过重")
    19. elif 30 <= BMI < 35:
    20. print("BMI=", BMI)
    21. print("织女中等肥胖")
    22. elif 35 <= BMI < 40:
    23. print("BMI=", BMI)
    24. print("织女严重肥胖")
    25. else:
    26. print("BMI=", BMI)
    27. print("织女非常严重肥胖")
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28

    #1.4 嵌套 <font style="color:rgb(71, 101, 130);">if</font> 语句

    由于 <font style="color:rgb(71, 101, 130);">if</font> 语句允许嵌套,也就是 <font style="color:rgb(71, 101, 130);">if</font> 语句中可以再包含 <font style="color:rgb(71, 101, 130);">if</font> 语句,需要注意的是相应的语法规则要对应上(比如 <font style="color:rgb(71, 101, 130);">if</font> 语句的冒号、缩进、<font style="color:rgb(71, 101, 130);">else</font> 的冒号和缩进等等),所以上述 <font style="color:rgb(71, 101, 130);">if</font> 语句后面跟的语句块同样可以包含 <font style="color:rgb(71, 101, 130);">if</font> 语句。使用嵌套 <font style="color:rgb(71, 101, 130);">if</font> 语句,可以将上述代码改成如下形式:
    1. weight = 40
    2. height = 1.55
    3. BMI = float(weight) / (float(height) * float(height))
    4. if 18.5 <= BMI < 25:
    5. print("BMI=", BMI)
    6. print("织女体重正常")
    7. elif BMI < 18.5:
    8. print("BMI=", BMI)
    9. if 16 <= BMI:
    10. print("织女体重过轻")
    11. elif 15 <= BMI < 16:
    12. print("织女严重体重不足")
    13. else:
    14. print("织女非常严重的体重不足")
    15. else:
    16. print("BMI=", BMI)
    17. if BMI < 30:
    18. print("织女体重过重")
    19. elif 30 <= BMI < 35:
    20. print("织女中等肥胖")
    21. elif 35 <= BMI < 40:
    22. print("织女严重肥胖")
    23. else:
    24. print("织女非常严重肥胖")
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25 我们看到一共有3个 <font style="color:rgb(71, 101, 130);">if...elif...else</font> 语句,根据对齐位置判断语句间的关系,这里要再次强调,使用 <font style="color:rgb(71, 101, 130);">if</font> 语句的时候,一定不要忘记缩进和冒号哦! 今天的内容就介绍这里啦,我们一起来回顾下:

    #2 总结

    4流程控制 - 图6

    本节内容,我们主要介绍了流程控制 <font style="color:rgb(71, 101, 130);">if</font> 语句、<font style="color:rgb(71, 101, 130);">if...else</font> 语句、<font style="color:rgb(71, 101, 130);">if...elif...else</font> 语句以及<font style="color:rgb(71, 101, 130);">嵌套if</font>语句的用法,在使用这些语句的过程中,我们一定要注意冒号和缩进是不能忘的哦!还有所有的代码都要是英文状态下的哦。

    #3 练习题

    牛郎织女坚贞的爱情感动了喜鹊,无数喜鹊飞来,用身体搭成一道跨越天河的喜鹊桥,让牛郎织女在天河上相会。下面我们使用 <font style="color:rgb(71, 101, 130);">if</font> 语句来判断下鹊桥的长度吧: 如果喜鹊数量小于 1000 只,鹊桥长度为 1 米;喜鹊数量大于等于 1000 只,小于 10000 只,鹊桥长度为 10 米;喜鹊数量大于等于 10000 只,小于 100000 只,鹊桥长度为 100 米;喜鹊数量大于等于 100000只,鹊桥长度大于 100 米! 假定喜鹊数量有四种情况,500只、6000只、20000只、150000只,通过修改喜鹊数量的值来判断鹊桥长度吧!

    更新于: 12/30/2021, 2:46:39 AM