2016-09-28 2 views
0

налог калькуляторСинтаксическая ошибка, если ... Элиф ... еще

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

Когда я удалить или добавить заявления синтаксическая ошибка кажется прыгать.

+0

ли вы имеете в виду, что если вы удалите один операторов elif, синтаксическая ошибка больше не находится перед оператором else else? – sabbahillel

ответ

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

Это, вероятно, все это, если копия + не вставить в вопрос не удалось