列表到带有标头的Python中的CSV [英] List to csv in python with header

查看:22
本文介绍了列表到带有标头的Python中的CSV的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我已经编写了一个脚本,它将如下所示的列表作为输出。

['red', '361', '0']
['blue', '1', '0']
['orange', '77', '0']
['cream', '660', '73']
['ivory', '159', '0']

此列表非常大,我希望将输出内容写入标题位于顶部的CSV,如下所示。

color | total | fail

以下是我尝试实现它的方法

with open('colour.csv', 'wb') as csvfile:
    header = ['color', 'total', 'fail']
    writer = csv.writer(csvfile, delimiter=',')
    writer.writerow(header)
    for row in output:
        writer.writerow(output)

但我得到的输出并不像预期的那样。生成CSV,并将列表的最后一行打印到CSV三次。我找不到为什么不打印所有其他行,或者为什么最后一行打印三次? 以下是我得到的示例输出:

color | total | fail
ivory | 159 | 0
ivory | 159 | 0
ivory | 159 | 0

这是我预期的输出:

color | total | fail
red | 361 | 0 
blue | 1 | 0
orange | 77 | 0
cream | 660 | 73
ivory | 159 | 0

有人能帮我这个忙吗?

推荐答案

代码-

import csv

arr = [['red', '361', '0'],
      ['blue', '1', '0'],
      ['orange', '77', '0'],
      ['cream', '660', '73'],
      ['ivory', '159', '0']]

with open('output.csv','w') as f:
    writer = csv.writer(f)
    writer.writerow(['color', 'total', 'fail'])
    writer.writerows(arr)

这篇关于列表到带有标头的Python中的CSV的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆