如何从一个csv文件追加到另一个?

时间:2019-12-18 16:28:59

标签: python csv

尝试了不同的方法。可能最符合我需要的方法是以下代码:

   with open('list.csv', 'r') as reader, open('list-history.csv', 'a') as writer:
         for row in reader:
             writer.writerow(row)

我使用的是“ a”,也尝试使用“ w”,但是没有运气。 结果根本没有输出。 有什么建议吗?谢谢。

2 个答案:

答案 0 :(得分:2)

我认为stacktrace应该有错误。

此处:writer.writerow(row)

通常open()返回没有.writerow()方法的文件对象,通常应使用.write(buffer)方法。

示例

with open('list.csv', 'r') as reader, open('list-history.csv', 'a') as writer:
    for row in reader:
        writer.write(row)

对我来说,它可以很好地与csv测试文件配合使用。但是它不会合并它们,只是将一个文件的内容追加到另一个文件中。

答案 1 :(得分:2)

如果两个csv列都具有相同的名称。 Python的pandas模块可以提供帮助。

示例代码段。

import pandas as pd

df1 = pd.read_csv("csv1.csv")
df2 = pd.read_csv("csv2.csv")

df1.append(df2, ignore_index=True)
df1.to_csv("new.csv",index=False)