我有以下功能。該程序查看每個文件並將所有4個文件中出現的行打印到新文件中。我試過file1.close()
,但是我收到關於關閉一個集合的錯誤?我想我可以使用with
聲明,但不知道如何做到這一點,我對編程非常陌生。如何關閉此功能中使用的文件?
def secretome():
file1 = set(line.strip() for line in open(path + "goodlistSigP.txt"))
file2 = set(line.strip() for line in open(path + "tmhmmGoodlist.txt"))
file3 = set(line.strip() for line in open(path + "targetpGoodlist.txt"))
file4 = set(line.strip() for line in open(path + "wolfPsortGoodlist.txt"))
newfile = open(path + "secretome_pass.txt", "w")
for line in file1 & file2 & file3 & file4:
if line:
newfile.write(line + '\n')
newfile.close()
我認爲你的newfile沒有換行符。否則,很好的答案。打了我一分鐘左右。 – mgilson
作爲一個方面說明,也許'newfile.writelines(行+'\ n'行...如果行)'可能會更清潔 – mgilson
@mgilson好的建議,我會做出更改。 –