下面的代码在第一个elif语句中以invlid语法显示.我已经多次检查并重新检查了我的代码,但无法弄清楚如何解决错误.
fileHandle = open ( 'gra1.txt' )
count=0
count1=0
fileList = fileHandle.readlines()
for fileLine in fileList:
line=fileLine.split()
if line[0] == '0':
print "graph G%d {\n", (count)
count +=1
elif line[0] == '1':
print "} \n"
elif line[0]=='':
continue
else:
count1 += 1
if count1==1: a=line[0]
elif count1==2: relation=line[0]
elif count1==3: b=line[0]
else:
print a, relation, b
count1=0
fileHandle.close()
解决方法:
你的elif没有正确缩进…如果是缩进的,它应该以相同的方式缩进.看到else块,似乎你错误地缩进了第一个if.请记住,elif / else应该始终以if开头.
编辑:对应编辑的问题详细信息:为什么还有第二个呢?它之前没有if.在编写代码之前,我觉得您需要正确组织条件.
更正代码的一种方法是将其更改为elif块:
else:
count1 += 1
if count1==1: a=line[0]
elif count1==2: relation=line[0]
elif count1==3: b=line[0]
您可能希望Python中的缩进变得更好.考虑阅读一下:-)
标签:python,if-statement,syntax-error