【Python学习|[Python] 你的BMI是多少呢()】博客主页:程序喵正在路上 的博客主页要点:这是一个计算BMI并通过分支结构给出身体质量分类的实例。
欢迎关注点赞收藏留言
本文由 程序喵正在路上 原创,CSDN首发!
系列专栏:Python学习
首发时间:2022年4月28日
?如果觉得博主的文章还不错的话,希望小伙伴们三连支持一下哦
前言
改革开放近 40 年,中国取得了世界瞩目的发展成就,人民生活水平显著提高、越来越多人开始关注“身体质量”,其中,肥胖程度最受关注。身体质量指数 (Body Mass Index,BMI) 是国际上常用的衡量人体肥胖程度和是否健康的重要标准,主要用于统计分析。肥胖程度的判断不能采用体重的绝对值,它天然与身高有关。因此,BMI 通过人体体重和身高两个数值获得相对客观的参数,并用这个参数所处范围衡量身体质量。
BMI 的定义如下:
????BMI = 体重(kg) / 身高2(m2)
例如,一个人身高 1.78 m、体重 67 kg,他的 BMI 值为 21.15.
BMI 值可以客观地衡量人的肥胖程度或健康程度。世界卫生组织根据全球人口体重统计认为,BMI 值低于 18.5 kg/m2 时 “过轻”,表明个体可能营养不良或者饮食无法保障;BMI 值高于 25 kg/m2 时 “过重”。我国卫生部也根据中国人体质给出了国内 BMI 参考值。更多 BMI 衛量标准如下表:
分类 | 国际 BMI 值( kg/m2 ) | 国内 BMI 值( kg/m2 ) |
---|---|---|
偏瘦 | < 18.5 | < 18.5 |
正常 | 18.5 ~ 25 | 18.5 ~ 24 |
偏胖 | 25 ~ 30 | 24 ~ 28 |
肥胖 | ≥30 | >28 |
输入:身高和体重值
处理:计算 BMI 值,并根据 BMI 指标分类找到合适类别
输出:打印指标分类信息
该实例的完整代码如下,请注意各判断条件及后面的注释。
height, weight = eval(input("请输入身高(米)和体重(公斤) [逗号隔开(英文格式)]:"))bmi = weight / pow(height, 2)
print("BMI 数值为:{:.2f}".format(bmi))
who, dom = " ", " "if bmi < 18.5:# WHO 标准
who = "偏瘦"
elif bmi < 25:
who = "正常"
elif bmi < 30:
who = "偏胖"
else:
who = "肥胖"if bmi < 18.5:# 我国卫生部标准
dom = "偏瘦"
elif bmi < 24:
who = "正常"
elif bmi < 28:
who = "偏胖"
else:
who = "肥胖"print("BMI 指标为:国际 '{0}',国内 '{0}'".format(who, dom))
程序运行结果如下:
请输入身高(米)和体重(公斤) [逗号隔开]:1.78, 67上面的代码采用了多分支结构对 BMI 数值按照不同区间范围进行分类,这种采用 if-elif-else 分支语句进行程序设计的方式十分常见。对于需要同时打印国际和国内两套 BMI 标准,程序采用两个 if-elif-else 语句分别计算两类不同 BMI 值。这种做法的好处是代码清晰明了,容易调试。
BMI 数值为:21.15
BMI 指标为:国际 ‘正常’,国内 ‘正常’
下面我们将两套指标合成一个 if-elif-else 语句来实现。
height, weight = eval(input("请输入身高(米)和体重(公斤) [逗号隔开(英文格式)]:"))
bmi = weight / pow(height, 2)
print("BMI 数值为:{:.2f}".format(bmi))who, dom = " ", " "
if bmi < 18.5:
who, dom = "偏瘦", "偏瘦"
elif 18.5 <= bmi < 24:
who, dom = "正常", "正常"
elif 24 <= bmi < 25:
who, dom = "正常", "偏胖"
elif 25 <= bmi < 28:
who, dom = "偏胖", "偏胖"
elif 28 <= bmi < 30:
who, dom = "偏胖", "肥胖"
else:
who, dom = "肥胖", "肥胖"print("BMI 指标为:国际 '{0}',国内 '{0}'".format(who, dom))
比较两种写法可以发现,if 语句的运用主要与程序编写者对问题的理解及算法设计有关,采用一组 if 语句将两套 BMI 指标融合在起, 这实际上是算法的改变。即使对专业程序员来说,程序的简洁性和可读性都比更少的代码行数重要,这里,推荐采用 第一种 方式编写程序。
拓展:中国居民膳食指南
《中国居民膳食指南》是 2016 年 5 月 13 日由国家卫生评生委项控局发布的指导中国居民饮食的权威资料。该指南针对2岁以上的所有储康人群提出 6 条核心推荐,分别为:食物多样,谷类为主;吃动平衡,健康体重:多吃水果、奶类、大豆;适量吃鱼、禽、蛋、瘦肉;少盐少油,控糖限酒:杜绝浪费、新兴食尚。
指南建议平均每天摄入 12 种以上食物,每周 25 种以上。各年龄段人群都应坚持日常身体活动,每周至少进行 5 天中等强度身体活动,累计 150 分钟以上。蔬莱水果是平衡膳食的重要组成部分,吃各种各样的奶制品,经常吃豆制品,适量吃坚果。鱼、禽、蛋和瘦肉摄入要适量。少吃肥肉、烟熏和腌制肉食品。成人每天食盐不超过 6 g,每天烹调油 25-30 g。足量饮水,成年人每天 7-8 杯,1500-1700ml,提倡饮用白开水和茶水。健康饮食,你做到了哪些?
这次的分享就到这里啦,继续加油哦^^
有出错的地方欢迎在评论区指出来,共同进步,谢谢啦
推荐阅读
- 个人网站|树莓派建立个人网站(一)(Nginx+uWSGI+Flask实现最简服务器的搭建)
- python|树莓派+python flask 调用天气api接口实现天气数据web
- Linux|树莓派部署Web服务器(Pi+flask+uWSGI+Nginx)
- 深度学习|TensorFlow 对数据集标记的xml文件解析记录
- python|2022五一杯数学建模资料汇总
- 数据库开发|通过栗子来学习MySQL高级知识点(学习,复习,面试都可)
- 数学建模|22022华东杯数学建模思路实时更新-ABC思路(AC完整程序)已更新-5月1日23时
- oeasy教您玩转python - 012 - # 刷新时间
- Python MongoDB连接操作实例