2016-09-22 134 views
-3

我试图写一个计算BMI的程序,方法是询问人的体重(以千克为单位)和身高(以米为单位)。为什么我在这里得到一个无效的语法错误?无效的语法错误

units = input("What units would you like to use? Enter I for Imperial or M for Metric") 

weight = input(int("what's your weight?") 

height = input(int("what's your height?") 

enter image description here

+2

算你'('和')'...你错过了一对夫妇 –

+0

具体来说,你错过了一个')'末的第二和第三行。第二行是错误实际存在的位置,但直到第三行才显示,因为直到那时它才是语法错误。 –

回答

4

你找错顺序。你应该有int(input())不是input(int())

而且你还有比你应该少的)。检查每一个打开支架有一个关闭一个

1

你有int和输入错误的顺序,做忘记了右括号:

units = input("What units would you like to use? Enter I for Imperial or M 
for Metric") 

weight = int(input("what's your weight?")) 

height = int(input("what's your height?")) 
0

避免使用输入()和使用的raw_input()代替。你也把int()放在错误的地方。

您的代码应该是这个样子:

units = raw_input('What units would you like to use?....') 

weight = int(raw_input("what's your weight?")) 

height = int(raw_input("what's your height?")) 
+0

为什么raw_input更好? – Yjell

+0

raw_input()允许用户输入字符作为字符串,并且不会给用户完全的权力,而只会将这些字符串输入到系统中。出于安全原因,只使用raw_input。 Input()会尝试将输入作为python命令运行。该功能已被Python 3带走,但仍在Python 2.7中。 – CasperTN