2014-11-04 130 views
1

我很抱歉,但我是一個完整的初學者,無論我嘗試它只是錯了。任何人都可以給我一個關於我的elif聲明發生什麼問題的小概念,這樣我就可以繼續使用它了嗎? (我也知道有1%的0%當前的錯誤,只是在考驗理論)elif聲明不起作用

one = (1) 
three = (2) 
four = (4) 
five = (5) 
seven = (7) 

stampduty = int(input("Enter amount of residential property")) 

if stampduty >= 1 and stampduty<=125000: 
    add = (stampduty*one/100.0) 
    addamount = stampduty + add 
    print("Stamp Duty percent 0% \nyour stamp duty amount is", addamount) 
elif: 
    add = add = (stampduty*one/100.0) 
    addamount = stampduty + add 
    print("Stamp Duty percent 0% \nyour stamp duty amount is", addamount) 
+0

你期望'add = add = ...'做什麼? – njzk2 2014-11-04 20:53:40

+0

這不是在實際的編程中,只是我把它放在這裏時所做的事:) – 2014-11-04 20:54:51

+0

另外,爲什麼你的值包含在圓括號中? – furkle 2014-11-04 20:59:28

回答

7

elif需要的條件,就像一個if聲明。如果你想要一個無條件的塊,用else

if stampduty >= 1 and stampduty<=125000: 
    add = (stampduty*one/100.0) 
    addamount = stampduty + add 
    print("Stamp Duty percent 0% \nyour stamp duty amount is", addamount) 
else: 
    add = add = (stampduty*one/100.0) 
    addamount = stampduty + add 
    print("Stamp Duty percent 0% \nyour stamp duty amount is", addamount) 
+0

您可能想要提出一些更改:'如果1 <= stampduty <= 125000:'和'add = stampduty * one/100.0'。 – Matthias 2014-11-04 21:26:46

0

也許你應該使用else而不是elif。 在elif中,與if一樣,您需要傳遞一個條件。