if ... elif ... else中的语法错误

时间:2016-09-28 18:25:26

标签: python syntax-error

税务计算器

def computeTax(maritalStatus,userIncome):
  if maritalStatus == "Single":
    print("User is single")
    if userIncome <= 9075:
      tax = (.10) * (userIncome)
    elif userIncome <= 36900:
      tax = 907.50 + ((.15) * (userIncome - 9075))
    elif userIncome <= 89350:
      tax = 5081.25 + ((.25) * (userIncome - 36900))
    elif userIncome <= 186350:
      tax = 18193.75 + ((.28) * (userIncome - 89350))
    elif userIncome <= 405100:
      tax = 45353.75 + ((.33) * (userIncome - 186350))
    elif userIncome <= 406750:
      tax = 117541.25 + ((.35) * (userIncome - (405100)
    else:                                            # getting syntax error here
      tax = 118118.75 + ((.396) * (userIncome - (406750))
    return tax
  else:
    return "placeholder"

def main():
  maritalStatusMain = input("Please enter your marital status (Single or Married)")
  userIncomeMain = float(input("Please enter your annual income"))
  finalTax = computeTax(maritalStatusMain,userIncomeMain)
  print(finalTax)
main()

当我删除或添加语句时,语法错误似乎会跳转。

1 个答案:

答案 0 :(得分:1)

快速浏览周围的线条,显示缺少的括号

...
  tax = 45353.75 + ((.33) * (userIncome - 186350))    # <- two ending parens
elif userIncome <= 406750:
  tax = 117541.25 + ((.35) * (userIncome - (405100)   # <- one ending paren, plus extra paren around 405100
else:
...

除非复制+粘贴到问题中失败,否则可能就是全部