我試圖找到outfile(of)以字母ATOM開頭的行,然後用它做些事情,但不幸的是它不會遍歷文件。有人知道爲什麼嗎?不重複遍歷文件?
with open(args.infile, "r") as f, open(args.outfile, "w+") as of, open(args.reference,"r") as rf:
for line in f:
of.write(line)
for line in rf:
if line[0:3]== "TER":
resnum = line[22:27]
#resnum_1[resnum] = "TER"
for line in of:
if line [0:4]== "ATOM":
res = line[22:27]
if res == resnum:
print res
你把所有的文件在同一時間打開。你有沒有嘗試在不同於你寫信給它的塊中打開'''? – roganjosh
爲什麼你有'''?看起來你可以直接使用'f'。 – user2357112
1)你正在迭代射頻的全部內容,但只抓取以'TER'開頭的最後一行,你想在這裏打破一個更復雜的邏輯嗎? 2)''''等於'f',所以你可以直接使用'f'(並將'f'的內容複製到其他地方的''of') – dantiston