将字符串和整数写入CSV fi

2024-06-16 11:26:33 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个代码,其输出如下所述。

  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

我想将这些数据写入.csv文件:我创建一个类似于data=[['Total Bits',totalbits]]的数组

并编写此代码将数据写入.csv文件。

for row in data:
   for col in row:
    out.write('%d;'%col))

   out.write('\n')
  out.close()

但它给了我一个错误,因为列中的第一个元素是一个字符串,是否有任何方法可以将此数据写入.csv文件,同时或不将其转换为数组。csv文件中的输出看起来像第一列描述(字符串)和第二列数字(整数)。

Total bits                       77826496
Total number of bits@0:          74653999
Total number of bits@1:          3172497
Total number of BRAM  bits@0:    17242039
Total number of BRAM  bits@1:    62089
Total number of non-BRAM  bits@0: 57411960
Total number of non-BRAM  bits@:  3110408

Tags: 文件ofcsv数据numberonesoutbits
2条回答

您可以使用格式函数。像这样:

data = [['Total Bits', 100]]
with open('output.csv','w') as out:
    for row in data:
        for col in row:
            out.write('{0};'.format(col))
        out.write('\n')

您可以尝试使用csv模块:

import csv
a = [['Total bits',77826496],['Total number of bits@0',74653999],['Total number of bits@1',3172497],\
     ['Total number of BRAM  bits@0',17242039],['Total number of BRAM  bits@1',62089],\
     ['Total number of non-BRAM  bits@0', 57411960],['Total number of non-BRAM  bits@',3110408]]
with open("output.csv", "wb") as f:
    writer = csv.writer(f,delimiter=':')
    writer.writerows(a)

output.csv文件将是:

Total bits:77826496
Total number of bits@0:74653999
Total number of bits@1:3172497
Total number of BRAM  bits@0:17242039
Total number of BRAM  bits@1:62089
Total number of non-BRAM  bits@0:57411960
Total number of non-BRAM  bits@:3110408

相关问题 更多 >