我将如何修复此 'if' 语句错误?

How would I fix this 'if' statement error?

我正在尝试制作一个 BMI 健康计算器 class。我还没有任何计算,因为我只是在开始测试菜单。出于某种原因,每次我尝试 运行 代码时,它都会向我显示一个错误(显示在我目前的代码下方)。我是 python 的新手,所以这似乎是菜鸟犯的错误。如果你能帮忙,那就太好了。

*my code below

    ans = input('''
***The Body Mass Index***
    1. I use Kilograms and Metres
    2. I'M AMERICAN!!!
    ''')
if ans==1
    m = input("Your height in Metres")
    kg = input("Your weight in Kilograms")
if ans==2
    print("Stawp yelling at me!!")
    inc = input("Your height in Inches")
    lbs = input("Your weight in Pounds")
else
    print("please try again with a valid input")

错误出现在第一个 if 语句之后:

 if ans==1

您的 if/else 语句后缺少冒号。此外,input() returns 一个 string,而不是一个 int。试试这个:

if int(ans)==1:
    m = input("Your height in Metres")
    kg = input("Your weight in Kilograms")
elif int(ans)==2:
    print("Stawp yelling at me!!")
    inc = input("Your height in Inches")
    lbs = input("Your weight in Pounds")
else:
    print("please try again with a valid input")

if 和 else 后面需要冒号。

你的 else 会捕获 ans=1,因为它只适用于 ==2。

else 应该是 if ans not in range(1..2): 之类的。