计算BMI,要求用Python,并且是要在文件中显示出结果,该怎么写
height = input('输入身高(m):')
weight = input('输入体重(kg):')
BMI = float(float(weight)/(float(height)**2))
result = ''
if BMI < 18.5:
result = '过轻'
elif BMI < 24:
result = '正常'
elif BMI < 28:
result = '肥胖前期'
elif BMI < 30:
result = 'I度肥胖'
elif BMI < 40:
result = 'II度肥胖'
else:
result = 'III度肥胖'
with open('BMI测试结果.txt', 'w', encoding='utf8') as f:
f.write(f'您的体重是:{weight}kg\n')
f.write(f'您的身高是:{height}m\n')
f.write(f'您的BMI指数:{BMI} 属于 {result}\n')
print("计算结果已导出到【BMI测试结果.txt】文件")
参考该表【中国参考标准】
class Bmi(object):
def __init__(self):
self.name = input('请输入姓名:')
self.high = float(input('请输入身高(m):'))
self.weight = float(input('请输入体重(kg):'))
print('欢迎%s使用魅力检测器!' % self.name)
def bmi_count(self):
bmi = self.weight / self.high ** 2
if bmi < 18.5:
print('%s过轻' % self.name)
elif bmi >= 18.5 and bmi < 25:
print('恭喜%s体重正常!' % self.name)
elif bmi >= 25 and bmi < 28:
print('%s过重' % self.name)
elif bmi >= 28 and bmi < 32:
print('%s肥胖' % self.name)
elif bmi >= 32 and bmi < 40:
print('%s过度肥胖' % self.name)
else:
print('小阔爱,是不是身高或者体重输错了?请重新输入')
# return
print('bmi指数为:%d' % bmi)
user = Bmi()
user.bmi_count()
#请输入姓名:xiaoge
请输入身高:1.74
请输入体重:74
欢迎xiaoge使用魅力检测器!
xiaoge体重正常
bmi指数为:24