2013-04-16 42 views
0

我使用Django的,但我认为这是一个Python的问题....Python中添加标题为CSV

怎样更改,并在我的已上传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()) 

我该怎么办这个?

+2

'csv.reader(file)'就够了;不需要读取和分割行,而是将读数留给'csv'模块。 –

回答

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'}