在python中将行添加到现有的csv文件

Posted

技术标签:

【中文标题】在python中将行添加到现有的csv文件【英文标题】:add row to existing csv file in python 【发布时间】:2013-03-27 09:49:43 【问题描述】:

我想使用一个函数将一行信息添加到现有的 csv 文件中。

friend_info 将是一个包含[name, address, phone, DOB] 的元组

我有这个代码

def add_friend(friend_info, friends_list):
    with open(friends_list, 'a') as fapp:
        writer = csv.writer(fapp)
        writer.writerow(friend_info)

由于某种原因,此代码添加到 csv 的最后一行(我希望它从新行开始)

【问题讨论】:

部分解决方案是将writerows更改为writerow 谢谢。这解决了我的手机问题。我如何让它写在一个新的行上? 看看HERE。如果您使用的是 Python3,则可能在打开文件时缺少换行符。 我使用 python 2.7。不过,谢谢。我正在看。我只是无法让它从新的一行开始。 这个问题在这里得到解答:***.com/questions/40304504/… 【参考方案1】:

我认为 CSV 写入器对象不够聪明,无法知道它正在附加到现有的 CSV 数据上。您只是给它一个文件对象并告诉它将新的 CSV 数据放入该文件,因此它只是开始在可以写入的地方写入。要开始新行,您需要先读取现有数据,附加新行,然后将其写回。

【讨论】:

以上是关于在python中将行添加到现有的csv文件的主要内容,如果未能解决你的问题,请参考以下文章

如何将熊猫数据添加到现有的 csv 文件中?

从 csv 文件将数据添加到现有的 apache spark 数据帧

如何使用 fast-csv npm 将新行或新行的数据(新行)附加到现有的 csv 文件

通过 Spark 将 csv 文件加载到现有的 HIVE 故事中

在 Python 中将文本表转换为 CSV

有没有一种有效的方法可以附加到现有的 csv 文件而不在 R 中重复?