在Python中将多个字符串写入CSV文件

在Python中将多个字符串写入CSV文件,python,csv,file-io,Python,Csv,File Io,因此,我创建了Python代码,该代码对几个不同的网站进行了删减,然后使用创建的列表执行一些操作。我知道如何将列表转换为字符串,以及如何从字符串中写入csv文件。我的问题是,我是否可以将多个字符串写入同一个csv文件中,并使用唯一的标题将每个字符串放在自己的行中?下面的代码将把所有数据放入csv文件中,但不在它自己的行中 str1 = "\n".join(data1) str2 = "\n".join(data2) str3 = "\n".join(matches) now = datetime

因此,我创建了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()

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

没有定义CSV文件格式的黄金标准,尽管可能很接近。因此,虽然从技术上讲,您可以自由创建自己的扩展名并将其称为CSV文件(如您所建议的,多个具有自己标题的独立子文件),但这在CSV中极为罕见。我预测,如果您试图读取这样的文件,在大多数软件中都会产生不理想的结果


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

一个CSV文件是最好的格式吗?如果有人要回答您的问题,他们需要知道什么是
data1
data2
、和
匹配项
,或者您现在得到了什么输出。谢谢,@Paul。data1和data2是二项式学名列表。Matches是data1和data2共有的二项式学名列表。这是一份我希望每天都能存储在一个csv文件中的每日抓取报告。Python有一个内置模块,方便地命名为,该模块旨在使csv文件的读取和写入变得简单。我听说过(re:Python csv module)。我想我需要好好读一读。谢谢,非常感谢。正如你可能直觉所示,我有点笨,但我正在学习。所以你是说每天为每个刮取的数据集编写一个单独的csv?数据集都是相同的模式(如果我正确解释模式的话)。它们都是二项式的学名。当你说“唯一标题”时,我认为这意味着每个标题都是不同的。这意味着列名、类型或列数是不同的,因此,它是不同的模式。如果所有数据确实共享相同的列标题,那么继续编写一个CSV文件,只需在第一行粘贴一个标题即可。这将是一个构造良好的CSV文件。祝你好运如果我的回答令您满意,请在上面标记为“已回答”。谢谢,谢谢,我很抱歉给你带来困惑。我确实需要将数据集分为单独的列,表示从中提取数据的不同网站,因此我可以按照您的建议进行操作,并将每个数据集都作为其自己的csv文件。听起来这样做是正确的。构建有效的CSV文件的好处是,即使您最终拥有大量CSV文件,它也是一种任何电子表格和许多其他程序都可以读写的文件格式,因此您可以随时读取它们,或者稍后使用常用或免费工具将其合并。祝你好运