需要帮助,写一个python BMI

2024-05-15 07:43:11 发布

您现在位置:Python中文网/ 问答频道 /正文

我是python新手,目前正在学习正确使用函数。你知道吗

h = 1.75
w = 70.5
bmi = float(w / h ** 2)


if bmi < 18.5:
    print('过轻')
elif 18.5 <= bmi < 25:
    print('正常')
elif 25 <= bmi < 28:
    print('过重')
elif 28 <= bmi < 32:
    print('肥胖')
else bmi >= 32:
    print('严重肥胖')

每次我尝试运行这个程序时都会出现这个错误

File "/Users/frank/Coding/bmimyself.py", line 17
    else bmi >= 32:
           ^
SyntaxError: invalid syntax

我将感谢任何帮助我的编码错误,我必须已经作出


Tags: 函数frank程序if错误floatuserselse
3条回答

不能在else语句中应用bmi >= 32这样的条件。else语句处理前面的if/elif语句都不为真的情况,因此它已经与隐式条件相关联。你知道吗

你应该有:

if bmi < 18.5:
    print('过轻')
elif 18.5 <= bmi < 25:
    print('正常')
elif 25 <= bmi < 28:
    print('过重')
elif 28 <= bmi < 32:
    print('肥胖')
else:
    print('严重肥胖')

避免语法错误。你知道吗

你需要使用

elif bmi >= 32:

只有“else”就不能有条件表达式。相反,它意味着如果上述条件都不满足,那么就这样做。你知道吗

这句话不是“else”,而是另一个“elif”。你知道吗

elif bmi >= 32:
  print 'foo'
else:
  print 'bar'

相关问题 更多 >