3 回答

TA貢獻(xiàn)1951條經(jīng)驗(yàn) 獲得超3個(gè)贊
解決方案是使用a模式附加文件。
outputFile = open('output.txt', 'a')
for i in top_k:
print(template.format(labels[i], results[i]), file = outputFile)
outputFile.close()
但是,我建議您使用 pythonic 方式逐行追加文件with。
with open("output.txt", "a") as outputFile :
for i in top_k:
outputFile.write(template.format(labels[i], results[i]), "\n")

TA貢獻(xiàn)1784條經(jīng)驗(yàn) 獲得超9個(gè)贊
您正在使用w
首先打開并“截?cái)唷蔽募哪J酱蜷_文件,正如您從內(nèi)置open
.?這意味著它從文件的開頭而不是結(jié)尾開始寫入。如果你想“追加”文本,你應(yīng)該改用a
。
outputFile?=?open('output.txt',?'a')
此外,您不希望每次迭代都打開和關(guān)閉文件,因?yàn)樵撊蝿?wù)可能代價(jià)高昂并且會影響性能。我建議使用with
來管理文件上下文。
with?open('output.txt',?a): ????for?i?in?top_k: ????????????print(template.format(labels[i],?results[i]),?file?=?outputFile)
添加回答
舉報(bào)