python_let`s try it 6___BMI计算器

python_let`s try it 6___BMI计算器 写一个BMI计算器BMI计算器 def bmi_calculator(): BMI计算器 输入身高米和体重公斤 输出BMI值和健康建议 BMI 体重 / (身高 ** 2) # 你的代码 pass#写一个BMI计算器 def bmi_calculator(): heightfloat(input(请输入你的身高: (米))) weightfloat(input(请输入你的体重: (公斤))) BMIweight/(height**2) if BMI18.5: print(体重过低) elif 18.5BMI23.9: print(正常范围) elif 24.0BMI27.9: print(超重) elif BMI28.0: print(肥胖) bmi_calculator()问题点1.边界值处理0或负数如果用户输入0或负数程序虽然不会报错但会给出体重过低或正常范围这种不合理的结论加上校验#写一个BMI计算器 def bmi_calculator(): heightfloat(input(请输入你的身高: (米))) weightfloat(input(请输入你的体重: (公斤))) #输入校验 if height0 or weight0: print(身高和体重必须为正数请重新输入) return BMIweight/(height**2) print(f你的BMI值是{BMI}) if BMI18.5: print(体重过低) elif 18.5BMI23.9: print(正常范围) elif 24.0BMI27.9: print(超重) elif BMI28.0: print(肥胖) bmi_calculator()问题点return退出函数之后没有重新输入的提示解决用While循环包住输入#写一个BMI计算器 def bmi_calculator(): while True: heightfloat(input(请输入你的身高: (米))) weightfloat(input(请输入你的体重: (公斤))) #输入校验 if height0 or weight0: print(身高和体重必须为正数请重新输入) continue BMIweight/(height**2) print(f你的BMI值是{BMI}) if BMI18.5: print(体重过低) elif 18.5BMI23.9: print(正常范围) elif 24.0BMI27.9: print(超重) elif BMI28.0: print(肥胖) break#计算完成后退出循环 bmi_calculator()注意这里再输入校验时使用的continue上面的例子是return