python csv两个同名的列

时间:2017-03-07 10:08:32

标签: python csv

有没有办法使用python csv模块来保存一个有两个同名列的csv?

这是我的功能

def DictListToCsv(Data, FileName, FieldNames):
    with open(FileName, 'w') as f:
        writer = csv.DictWriter(f, fieldnames = FieldNames, dialect = 'excel', delimiter=',', lineterminator='\n')
        writer.writeheader()
        writer.writerows(Data)

我尝试的每一种方法都会涉及到一个带有两个标题相同的字典的字典,这当然是不可能的

2 个答案:

答案 0 :(得分:2)

您是否尝试过使用pandas模块? 将您的数据转换为pandas dataframe(“df”),然后使用:

df.columns=['x','x']

最后,将其保存到csv文件中:

 df.to_csv(r'/home/ishan/Desktop/a.csv',header=True, index=False)

它会起作用。

答案 1 :(得分:0)

这对你有用吗? [更新]现在设置分隔符和行终止符

def DictListToCsv(Data, FileName, FieldNames):
    with open(FileName, 'w') as f:
        writer = csv.writer(f, dialect = 'excel', delimiter=',', lineterminator='\n')
        writer.writerow(FieldNames)
        writer.writerows(Data)

FieldNames = ['Spam','Spam','Spam','Spam','more Spam']
Data = [[11,12,13,14,15],[21,22,23,24,25]]

DictListToCsv(Data, 'eggs.csv', FieldNames)