在Python中将逗号分隔的字符串列表写入csv文件

时间:2012-09-02 23:49:33

标签: python list csv

如果我有一个字符串列表如下:

data = ['a,x', 'b,y', 'c,z']
f = open('data.csv', 'wb')
w = csv.writer(f, delimiter = ',')
w.writerow(data)
f.close()

问题是它们被保存在一行中的3个单元格中,如下所示:(“”是一个Excel单元格)

“a,x”“b,y”“c,z”

我真正想要的是以下内容:

“a”“x”

“b”“y”

“c”“z”

因此它们位于单独的单元格和单独的行中。有谁知道如何正确地做到这一点?

1 个答案:

答案 0 :(得分:11)

您可以使用writerows创建列表(行)列表并将其全部写入。或者单独写下它们。重要的一部分是一行是一个python列表,而不是一个逗号分隔值的字符串。

data = ['a,x', 'b,y', 'c,z']
f = open('data.csv', 'wb')
w = csv.writer(f, delimiter = ',')
w.writerows([x.split(',') for x in data])
f.close()