2012-07-25 73 views
0

我正在根據字符串拆分文件,並希望將輸出文件名稱編號。使用計數器迭代文件名

這是我到目前爲止有:

outputfile = open("output.seq") 
outputfileContent = outputfile.read() 
outputfileList = outputfileContent.split(">") 
for count, line in enumerate(f): 
    for items in outputfileList: 
     seqInfoFile = open('%f.dat', 'w') 
    seqInfoFile.write(str(items)) 

我不知道在哪裏定義F。

感謝您的幫助!

+0

如何'output.seq'樣子?你想要完成什麼? – eumiro 2012-07-25 13:56:05

+0

該代碼中的「f」是什麼 – Surya 2012-07-25 14:01:47

回答

0

這似乎是,如果你想每一個項目在題爲作爲其索引文件中的輸出文件列表關聯,你應該做這樣的事情:

for i in range(len(outputfileList)): 
    seqInfoFile = open(str(i) + '.dat', 'w') 
    seqInfoFile.write(str(outputfileList[i])) 

這不是很優雅的一個迭代,但另一種選擇是通過每次調用outputfileList.index(items)來確定數字。

1

假設我沒有誤解你,你有它。

outputfile = open("output.seq") 
outputfileContent = outputfile.read() 
outputfileList = outputfileContent.split(">") 

for count, content in enumerate(outputfileList, 1): 
    with open("output_%s.dat" % count, "w") as output: 
     output.write(content) 
+0

我正要發佈類似的東西。簡單的一個。 – Surya 2012-07-25 14:10:59

0

打開output.seq,寫了第一條(在>分裂)到文件1.dat,第二個到2.dat等:

with open("output.seq") as fi: 
    for count, line in enumerate(fi, 1): 
     with open('{0}.dat'.format(count), 'w') as fo: 
      fo.writelines(line.split('>')) 
+0

他聽起來像他想輸出拆分文本,而不是每一行。 – Julian 2012-07-25 14:00:19

+0

@Julian - 然後我們分開它... – eumiro 2012-07-25 14:01:24