【问题标题】:Add new lines to CSV file at each iteration in Python在 Python 的每次迭代中向 CSV 文件添加新行
【发布时间】:2015-03-09 12:18:16
【问题描述】:

我在 Python 中有以下代码。我需要执行函数dd.save()N 次,每次都在文件test.csv 中添加一些新行。我当前的代码只是覆盖了文件N 的内容。我该如何解决这个问题?

def save(self):  

    f = csv.writer(open("test.csv", "w"))

    with open("test.csv","w") as f:
        f.write("name\n")
        for k, v in tripo.items():
            if v:
                f.write("{}\n".format(k.split(".")[0]))
                f.write("\n".join([s.split(".")[0] for s in v])+"\n")


if __name__ == "__main__":
    path="data/allData"

    entries=os.listdir(path)

    for i in entries:
      dd=check(dataPath=path,entry=i)
      dd.save()
      print(i)

【问题讨论】:

标签: python csv fwrite


【解决方案1】:

mode 最常用的值是 'r' 用于读取,'w' 用于写入(如果文件已经存在则截断文件)和 'a' 用于追加(在某些 Unix 系统上,这意味着所有写入都追加到文件末尾,无论当前的查找位置如何)。

以追加模式打开文件:

with open("test.csv","a") as f:
        f.write("name\n")

查看文档here

【讨论】:

    猜你喜欢
    • 2010-12-29
    • 1970-01-01
    • 2023-03-31
    • 1970-01-01
    • 2012-07-09
    • 2018-03-20
    • 2017-08-20
    • 2014-03-31
    • 1970-01-01
    相关资源
    最近更新 更多