在第一个空行上写入CSV

20 浏览
0 Comments

在第一个空行上写入CSV

这个问题已经有答案了:如何将内容追加到文件中?

我正在开发一个将行写入 CSV 的应用程序。然而,当我第二次运行该应用程序时,已经写入的行将被新行覆盖。我怎么才能让写入者写入到下一个空行,而不是已经有数据的行?我没有找到任何关于如何做到这一点的东西。下面是我的代码:

listsof = [1, 2, 3, 4]
with open('C:/Users/Family3/Downloads/weather.csv', 'w', newline='') as csvfile:
    writer = csv.writer(csvfile, delimiter=',',
                            quotechar='|', quoting=csv.QUOTE_MINIMAL)
    writer.writerow(listsof)

admin 更改状态以发布 2023年5月21日
0
0 Comments

这是因为,每次打开csv文件时,你都没有考虑到文件中可能已经有数据了。当你在程序中加载csv文件时,应该将新数据附加到文件中而不是直接写入文件。

0
0 Comments

请尝试使用以下代码(请注意 'a' 表示追加):

with open('C:/Users/Family3/Downloads/weather.csv', 'a', newline='') as csvfile:
    writer = csv.writer(csvfile, delimiter=',',
                            quotechar='|', quoting=csv.QUOTE_MINIMAL)
    writer.writerow(listsof)

'a' 表示以追加的方式打开文件,并不会覆盖同名的已有文件。

0