我处理了50个文件,然后将每个文件的输出写入.csv文件,但是,它只给我输出到.csv文件的最后一个文件
with open('output.csv','a+') as out:
out.write(filename)
out.write('\n')
out.write('\n')
out.write(';''Golden readback from vivado before fault-injection')
out.write(';''Readback from vivado after the injection')
out.write(';''Real-Delta')
out.write('\n')
# original is my data.
for row in original:
for col in row:
out.write('{0};'.format(col))
out.write('\n')
out.write('\n')
out.close()
知道如何将所有文件输出到同一个.csv文件。
答案 0 :(得分:1)
您使用' a +'将结果附加到代码中模式,尝试' w +'相反,它应该工作。
with open('output.csv','w+') as out:
out.write(filename)
out.write('\n')
out.write('\n')
out.write(';''Golden readback from vivado before fault-injection')
out.write(';''Readback from vivado after the injection')
out.write(';''Real-Delta')
out.write('\n')
# original is my data.
for row in original:
for col in row:
out.write('{0};'.format(col))
out.write('\n')
out.write('\n')
out.close()
答案 1 :(得分:0)
import glob
from itertools import islice
import linecache
path = '*.rbd'
#path='original-adder.rbd'
files=sorted(glob.glob(path))
for filename in files:
del_lines = 101
with open(filename,'r') as f:
i=1
while i <= del_lines:
line1 = f.readline()
i+=1
i=0
count0_bram = 0
count1_bram = 0
count0_nonbram = 0
count1_nonbram = 0
totalbits = 0
totalbitsones = 0
totalbitszeros = 0
NON_BRAM_bits_zero_original=57411950
NON_BRAM_bits_ones_original=3110418
difference_zero_non_BRAM = 0
difference_ones_non_BRAM = 0
# COUNT NON BRAM
for i in range(102,1891426):
line=linecache.getline(filename,i)
count_zeros=line.count('0')
count0_nonbram=count0_nonbram+count_zeros
count_ones=line.count('1')
count1_nonbram=count1_nonbram+count_ones
i=0
# to count BRAM
#lines=islice(fin,1891427,1903714)
for i in xrange(1891427,2432181):
line=linecache.getline(filename,i)
#line=line.strip()
count_zeros=line.count('0')
count0_bram=count0_bram+count_zeros
count_ones=line.count('1')
count1_bram=count1_bram+count_ones
i=0
totalbits=count0_bram+count1_bram+count0_nonbram+count1_nonbram
totalbitsones=count1_bram+count1_nonbram
totalbitszeros=count0_bram+count0_nonbram
difference_zero_non_BRAM = count0_nonbram- NON_BRAM_bits_zero_original # new -old
difference_ones_non_BRAM = count1_nonbram-NON_BRAM_bits_ones_original # new - old
print filename
print "-------------------------------------------------"
print "Total Bits:%d"%totalbits
print "Number of totalbits-zeros: %d." %totalbitszeros
print "Number of totalbits-ones: %d." %totalbitsones
print "Number of BRAM-Zeros: %d." %count0_bram
print "Number of BRAM-ones: %d." %count1_bram
print "Number of NON_BRAM-Zeros: %d." %count0_nonbram
print "Number of NON_BRAM-Ones: %d." %count1_nonbram
print "difference_zero_non_BRAM:%d."%difference_zero_non_BRAM
print "difference_ones_non_BRAM:%d."%difference_ones_non_BRAM
print "--------------------------------------------------"
original= [['Total Bits', 77826496,totalbits,totalbits-77826496],['Total number of bits @0',74651972,totalbitszeros,totalbitszeros-74651972],['Total number of bits @1',3174524,totalbitsones,totalbitsones-3174524],['Totalnumber of BRAM bits-zero',17240022,count0_bram,count0_bram-17240022],['Total number of BRAM bits-ones',64106,count1_bram,count1_bram-64106],['Total number of non-BRAM bits@0',57411950,count0_nonbram,count0_nonbram-57411950],['Total number of non-BRAM bits@1',3110418,count1_nonbram,count1_nonbram-3110418]]