用Python将几个字符串写入CSV文件

时间:2013-11-03 01:35:48

标签: python csv file-io

所以我创建了Python代码,它可以抓取几个不同的网站,然后用创建的列表做一些事情。我知道如何将列表转换为字符串以及如何从字符串中写入csv文件。我的问题是,我可以在同一个csv文件中写几个字符串,并将每个字符串放在自己的行中,并带有唯一的标题吗?下面的代码将把所有数据都放到csv文件中,但不能放在自己的行中。

str1 = "\n".join(data1)
str2 = "\n".join(data2)
str3 = "\n".join(matches)
now = datetime.datetime.now()
now_str = now.strftime("%Y-%m-%d-%H-%M")
outfilename = 'data-{}.csv'.format(now_str)
outpath = 'data/'
outFile = open(outfilename, 'write')
outFile.write(str1)
outfile.write(str2)
outfile.write(str3)
outFile.close()

1 个答案:

答案 0 :(得分:2)

您的问题的简单答案是,您可能不应该创建包含多个部分的CSV,每个部分都有独立的标题。

虽然RFC 4180可能会接近,但没有定义CSV文件格式的黄金标准。因此,虽然您在技术上可以自由地创建自己的扩展并将其称为CSV文件(例如,您提出的具有自己标头的多个独立子文件),但这在CSV中非常罕见。我预测如果你试图阅读这样的文件,它会在大多数软件中产生不良结果。

如果数据集具有不同的架构,则最佳做法是为每个数据集创建一个CSV。