SyntaxError: invalid syntax
这个报错经常遇见,但是总感觉自己的代码没有问题,根据报错提示的行也找不到错误,这些情况以及解决方法都有哪些呢?
1)丢符号类:
- 忘记在 if , elif , else , for , while , class ,def 声明末尾添加 冒号( : )
- 代码中的 ( )没有成对出现,比如:
for line in f:
line = line.strip()
……
if len(words)>1:
for word in words:
if not Dict.get(word[0]):
Dict[word[0]]=set()
Dict[word[0]].add(word[1])
else:
Dict[word[0]].add(word[1]#缺少一个)
for K in Dict.keys():
max_cixing_word[K]=len(Dict[K])
File "<ipython-input-6-eb7bfb9def4a>", line 48
for K in Dict.keys():
^
SyntaxError: invalid syntax
如果我们按报错的行去找,怎么也不会发现错误,上下文去看就会发现,上一个if函数里,没有写全括号,少了一个),就会导致python认为下面的代码都属于括号里的内容,添加后此错误消失。
2)多符号类:
多了一个 “ :”#比如
def main():
print("")
main():
#-----------------------------------------------------
#又如
for line in f:
line=line.strip():
复制粘贴难免多点少点,比如这里就是把 :也复制了过来,导致了这个错误