如何知道要编写多少行来编写python

时间:2015-06-03 15:15:16

标签: python file-io

我正在读取带有字符串的文件并根据它输出文件,并进行一些修改。读取一行,进行修改并立即输出是否更快,或者更好地读取多行,进行修改并立即批量写入。如果批量编写它们的速度更快,我如何优化批量的大小是最快的,因为我想存储一个字符串或列出数百万行的长度可能会减少不必要的速度。

2 个答案:

答案 0 :(得分:0)

只需逐一进行操作,您的代码就会更清晰,更容易推理。默认情况下,所有IO文件都被缓冲,这意味着实际写入只会在底层缓冲区已满时刷新

答案 1 :(得分:0)

编写一些代码来测试它!

正如我在上一个问题的评论中所说,您的操作系统将进行缓冲和缓存,因此并非每次读取或写入调用都会导致磁盘访问。但是,系统调用 比列表操作慢,因此您可以更快地使用合理大小的数据块,例如64kB。较大的块,高达1MB可能稍微快一些,具体取决于设备(例如传统的磁性HD与SSD),但IME 64kB通常是足够的。

但在进行现有代码的重大重组之前,一定要做一些测试。在您尝试提高I / O速度之前,确定I / O实际上是程序的瓶颈。正如Knuth所说,过早优化是万恶之源。