Python将标头添加到CSV

时间:2013-04-16 15:12:44

标签: python django

我正在使用Django,但我认为这是一个Python问题......

如何在已上传的CSV文件的顶部修改和编写一些标题?

文件已上传

jack;1st street ;New York

我想要附加到CSV

name;street;area
jack;1st street ;New York

这是我上传后的阅读方式:

 import csv
    file = upload.filepath
    file_read = csv.reader(file.read().splitlines())

我该怎么做?

1 个答案:

答案 0 :(得分:2)

您可以使用DictReader和DictWriter将其保存为带有标题的新文件...

file_read = csv.DictReader(open('/tmp/test.csv', 'rb'), 
    ['name','street','area'], delimiter=';')
file_write = csv.DictWriter(open('/tmp/test-headers.csv', 'wb'), 
    ['name','street','area'], delimiter=';')
file_write.writeheader()
file_write.writerows(file_read)

或者,如果您只想在脚本中使用该文件:

file_read = csv.DictReader(open('/tmp/test.csv', 'rb'), 
    ['name','street','area'], delimiter=';')

for row in file_read:
    print row

以上版画:

{'street': ' 1st street', 'name': 'jack', 'area': ' New York'}
{'street': ' 2nd street', 'name': 'sally', 'area': ' New York'}