if…elif…els语法错误

2024-04-28 00:16:59 发布

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

税务计算器

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()

当我删除或添加语句时,语法错误似乎在跳跃


Tags: inputreturnifmaindefelsetaxprint
1条回答
网友
1楼 · 发布于 2024-04-28 00:16:59

快速浏览一下它周围的行,就会发现缺少一个括号

...
  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:
...

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

相关问题 更多 >