Discuss / Python / 完成,把前面的格式化内容用上了

完成,把前面的格式化内容用上了

Topic source

哎呀博雅

#1 Created at ... [Delete] [Delete and Lock User]
print('''BMI值(Body Mass Index,简称BMI)
是指身高体重指数,主要用于统计用途。
BMI值原来的设计是一个用于公众健康研究的统计工具。
低于18.5:过轻
18.5-25:正常
25-28:过重
28-32:肥胖
高于 32:严重肥胖''')
name = input('请输入您的姓名:')
tizhong,shengao = float(input('请输入体重(kg):')) , float(input('请输入身高(cm):'))
shengao_1 = shengao/100
bim = tizhong / shengao_1**2
if bim <=18.5:
    print('%s您的身高%.1fcm,您的体重%.1f公斤,您的BIM体质指数为%.1f,您体重过轻了,多吃点哈!'%(name , shengao_1 , tizhong , bim))
elif 18.5 < bim <=25:
    print('%s您的身高%.1fcm,您的体重%.1f公斤,您的BIM体质指数为%.1f,您各项指数堪称完美啊!继续保持'%(name , shengao_1 , tizhong , bim))
elif 25 < bim <= 28:
    print('%s您的身高%.1fcm,您的体重%.1f公斤,您的BIM体质指数为%.1f,您体重过重了,注意控制下饮食少油多吃绿叶菜!'%(name , shengao_1 , tizhong , bim))
elif 28 < bim <= 32:
    print('%s您的身高%.1fcm,您的体重%.1f公斤,您的BIM体质指数为%.1f,您太胖了,会得三高的,在不减肥……哎~~~~'%(name , shengao_1 , tizhong , bim))
elif bim >= 32:
    print('%s您的身高%.1fcm,您的体重%.1f公斤,您的BIM体质指数为%.1f,你吃什么了!每餐一只恐龙吗!'%(name , shengao_1 , tizhong , bim))
else:
    print('你这是输入了什么!!!!!!!')

思考1:有没有更优化的代码……

思考2:用户在身高和体重输入的如果不是数字,要怎么提醒和返回上一步要求重新输入,或压根不能这样执行


  • 1

Reply