我正在將我的代碼的輸出寫入.csv文件。有三個目錄,每個目錄包含50個文件。我想將每個目錄文件的輸出寫入不同的列。喜歡;在第一列之後寫入csv文件的第二列
group1 group2 group3
file1 1445 89 87
file2 1225 100 47
file3 650 120 67
file4 230 140 97
我有下面的代碼這樣做,
from collections import Counter
import glob
import os
out= open('output.csv','a')
out.write (';''group-1')
out.write (';''group-2')
out.write (';''group-3')
out.write('\n')
i = 1
while i<=50:
out.write("file-%d" %i)
out.write('\n')
i+=1
i=1
path = 'group/group-*-files/*.txt'
files=sorted(glob.glob(path))
c=Counter()
for filename in files:
for line in open(filename,'r'):
c.update(line.split())
for item in c.items():
oi=("{}\t{}".format(*item))
out_array = oi.split()
if out_array[0]=='00000000':
out.write(out_array[1])
out.write('\n')
c.clear()
我越來越並沒有能夠解決的問題,答案開始後,文件編號寫在第一列50
file48
file49
file50
1445
1225
..
我想寫第一組50列,第二組50列,第三組最後50列
最終輸出的樣子,
group1 group2 group3
file1 145 89 87
file2 850 100 47
file3 650 120 67
file4 230 140 97
你真的應該使用['with'(https://stackoverflow.com/q/9282967/3901060)當您打開文件。 – FamousJameous
@ FamousJameous2可以用''來解決寫入下一列的問題 – hassan
不可能在原地編輯文件,只能在最後寫行。因此打開文件,將你想要的內容存儲爲一行,並將其寫入'out'。更多信息:[這裏](https://stackoverflow.com/questions/5453267/is-it-possible-to-modify-lines-in-a-file-in-place) –