我正在开发一个将行写入 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)
试试这个(注意“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”打开文件进行追加并且不会删除已存在的同名文件。
这是因为,每当您打开 csv 文件时,您都不会考虑到您可能文件中已经有数据。当您将 csv 文件加载到程序中时,您应该将新数据追加到文件中,而不是仅仅写入。