我收到下面一行的语法错误我不知道为什么这个错误会产生,因为之前它曾经工作正常并突然开始抛出此错误
myfile.write('\n'+str(serverAndInstance)+','+str(GCOverHead)+','+str(min(usedAfterGc))+','+str(max(usedAfterGc))+','+str(sum(usedAfterGc)/len(usedAfterGc))+',0,0')
答案 0 :(得分:0)
您发布的广告内容非常合适,这意味着前一行缺少结束)
,]
或}
括号,括号或支撑:
>>> something = (something_else + str(whatever)
... myfile.write('\n'+str(serverAndInstance)+','+str(GCOverHead)+','+str(min(usedAfterGc))+','+str(max(usedAfterGc))+','+str(sum(usedAfterGc)/len(usedAfterGc))+',0,0')
File "<stdin>", line 2
myfile.write('\n'+str(serverAndInstance)+','+str(GCOverHead)+','+str(min(usedAfterGc))+','+str(max(usedAfterGc))+','+str(sum(usedAfterGc)/len(usedAfterGc))+',0,0')
^
SyntaxError: invalid syntax
这里是something
行缺少一个右括号(2次(
但只有一个)
)但Python在解析之前不知道它丢失了下一行。
你真的应该使用csv
module代替将逗号分隔的值写入文件,如果使用的话,你的行可读性会更高:
with open(outputfile, 'wb') as outfh:
csvwriter = csv.writer(outfh)
for something in some_iterable:
# ...
row = [serverAndInstance, GCOverHead, min(usedAfterGc), max(usedAfterGc),
sum(usedAfterGc) / len(usedAfterGc), 0, 0]
csvwriter.writerow(row)