将大数据写入.csv文件时,经常打开和关闭文件会更好吗?

时间:2015-06-23 17:16:15

标签: python csv

我正在编写一个带有while循环的程序,它会将大量数据写入csv文件。可能超过100万行。

考虑到运行时间,内存使用情况,调试等,两者之间的选择更好:

  1. 打开一个CSV文件,保持打开并逐行写入,直到100万全部写完

  2. 打开一个文件,写下大约100行,关闭(),再打开,写下大约100行,......

  3. 我想我只是想知道如果我们要始终保持文件打开,是否需要更多回忆?哪一个需要更长的时间?

    我无法运行代码进行比较,因为我使用VPN代码,而通过测试进行测试对我来说会花费太多。所以只需要一些经验法则就足够了。

1 个答案:

答案 0 :(得分:2)

我相信写操作会立即写入磁盘,因此我无法从关闭和重新打开文件中看到任何好处。文件在打开时不存储在内存中,你只需要获得一个指向文件的指针,然后一次加载或写入一部分文件。

修改

更明确一点,不,打开一个大文件不会占用大量内存。同样地,只要在将数据写入文件后不将数据保存在内存中,写入大量数据就不会占用大量内存。