2013-10-20 205 views
2

我添加了一個elif的語句來我的代碼:「語法錯誤:無效的語法」在有效的語句

if i % 100 < 10: 
     letter_count += numletters[str(i)[len(str(i)) - 1] 
    elif (i % 100 >= 10) and (i % 100 < 20): 
     letter_count += numletters[str(i)[len(str(i)) - 2:]] 

,現在它給我一個語法錯誤:

File "<stdin>", line 35 
    elif (i % 100 >= 10) and (i % 100 < 20): 
    ^
SyntaxError: invalid syntax 

我不知道什麼是錯的在此陳述中,請提前感謝您的幫助。

+0

這個問題似乎是無關緊要的,因爲它太侷限了。 – hjpotter92

+0

如果標題更像是「Python SyntaxError on valid syntax」,那麼它就不會像本地化一樣。 – SethMMorton

回答

5

你缺少一個右括號:

numletters[str(i)[len(str(i)) - 1] 

應該

numletters[str(i)[len(str(i)) - 1]] 

在一般情況下,如果你得到線路上的SyntaxError和錯誤消息是沒有意義的,它通常是在上一行缺少右括號或右括號(儘管它也可能是在上一行的iffor語句末尾缺少:)。