Python 3.x &引用;SyntaxError:无效语法“;论有效陈述

Python 3.x &引用;SyntaxError:无效语法“;论有效陈述,python-3.x,Python 3.x,我在代码中添加了一条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:]] 如果i%100=10)和(i%100=10)和(i%100

我在代码中添加了一条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:]]
如果i%100<10:
字母计数+=numletters[str(i)[len(str(i))-1]
elif(i%100>=10)和(i%100<20):
字母计数+=numletters[str(i)[len(str(i))-2:]
现在它给了我一个语法错误:

File "<stdin>", line 35
    elif (i % 100 >= 10) and (i % 100 < 20):
       ^
SyntaxError: invalid syntax
文件“”,第35行
elif(i%100>=10)和(i%100<20):
^
SyntaxError:无效语法

我不知道这句话有什么不对,提前感谢您的帮助。

您缺少一个右括号:

numletters[str(i)[len(str(i)) - 1]
应该是

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

通常,如果一行中出现
语法错误,且错误消息毫无意义,则通常是前一行中缺少右大括号或右括号(尽管也可能是因为前一行中的
if
for
语句末尾缺少
).

这个问题似乎离题了,因为它太本地化了。如果把标题改为“Python SyntaxError on valid syntax”之类的话,它就不会本地化了。