第五讲 分支结构

迄今为止,我们写的 Python 代码都是一条一条语句按顺序向下执行的,这种代码结构叫做顺序结构。然而仅有顺序结构并不能解决所有的问题,比如我们设计一个游戏,游戏第一关的过关条件是玩家获得1000分,那么在第一关完成后,我们要根据玩家得到分数来决定是进入第二关,还是告诉玩家“Game Over”。在这样的场景下,我们的代码就会产生两个分支,而且这两个分支只有一个会被执行。类似的场景还有很多,我们将这种结构称之为“分支结构”或“选择结构”。给大家一分钟的时间,你应该可以想到至少5个以上类似的例子,赶紧试一试吧!

使用if和else构造分支结构

在 Python 中,要构造分支结构可以使用ifelifelse三个关键字。所谓关键字就是编程语言中有特殊含义的单词,像ifelse就是专门用于构造分支结构的关键字,很显然你不能够使用它作为变量名。当然,我们并不是每次构造分支结构都会把三个关键字全部用上,下面我们通过例子加以说明。

我们来写一个身体质量指数(BMI)的计算器。身体质量质数也叫体质指数,是国际上常用的衡量人体胖瘦程度以及是否健康的一个标准,计算公式如下所示。通常认为18.5≤BMI<2418.5≤BMI<24是正常范围,BMI<18.5BMI<18.5说明体重过轻,BMI≥24BMI≥24说明体重过重,BMI≥27BMI≥27就属于肥胖的范畴了。

BMI=体重身高2BMI=身高2体重​

说明:上面公式中的体重以千克(kg)为单位,身高以米(m)为单位。

"""
BMI计算器

Version: 1.0
Author: 骆昊
"""
height = float(input('身高(cm):'))
weight = float(input('体重(kg):'))
bmi = weight / (height / 100) ** 2
print(f'{bmi = :.1f}')
if 18.5 <= bmi < 24:
    print('你的身材很棒!')
复制代码

提示if语句的最后面有一个:,它是用英文输入法输入的冒号;程序中输入的'"=()等特殊字符,都是在英文输入法状态下输入的,这一点之前已经提醒过大家了。很多初学者经常会忽略这一点,等到执行代码时,就会看到一大堆错误提示。当然,认真读一下错误提示还是很容易发现哪里出了问题,但是强烈建议大家在写代码的时候切换到英文输入法,这样可以避免很多不必要的麻烦。

上面的代码中,我们在计算和输出 BMI 之后,加上了一段分支结构,如果满足18.5≤BMI<2418.5≤BMI<24,程序会输出“你的身材很棒!”,但是如果不满足条件,这段输出就没有了。这就是我们上面说的代码有不同的执行路径,有些代码不一定会执行到。我们在if关键字的后面给出了一个表达式18.5 <= bmi < 24,之前我们说过,关系运算会产生布尔值,如果if后面的布尔值为True,那么if语句下方,有四个空格缩进的print('你的身材很棒!')就会被执行。我们先输入几组数据运行上面的代码,如下所示。

第一组输入:

身高(cm):175
体重(kg):68
bmi = 22.2
你的身材很棒!
复制代码

第二组输入:

身高(cm):175
体重(kg):95
bmi = 31.0
复制代码

第三组输入:

身高(cm):17
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值