2016-04-07 23 views
1

我是python新手,目前正在学习正确使用函数。需要帮助,编写一个Python BMI计算

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 

我将不胜感激的任何援助,我一定让

回答

0

您不能在else声明中应用bmi >= 32之类的条件。 else语句处理前面的if/elif语句均为True时的情况,因此它已经与隐式条件关联。

你应该有:

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

为了避免SyntaxError错误。

0

这种说法我的编码错误是不是“其他“,这是另一个”elif“。

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

您需要使用

elif bmi >= 32: 

只有 “别人” 你不能拥有的条件表达式。它意味着如果上述条件都不满足,那就做到这一点。

0

只需简单地改变最后的“其他”到“ELIF

其他说法是一样的东西不得已的选择,如果没有以上ELIF的条件得到满足。