一次性读取整个文件而不是根据需要读取字节有什么优点/缺点吗?那么有什么好处:
file_handle = open("somefile", rb)
file_contents = file_handle.read()
# do all the things using file_contents
相比:
file_handle = open("somefile", rb)
part1 = file_handle.read(10)
# do some stuff
part2 = file_handle.read(8)
# do some more stuff etc
背景:我正在用 Python 编写一个 p-code(字节码)解释器,最初只是编写了一个简单的实现,它根据需要从文件中读取字节并执行必要的操作等。我正在展示该程序的朋友建议我应该而是将整个文件读入内存(Python 列表?),然后从内存中处理它以避免大量缓慢的磁盘读取。测试文件目前小于 1KB,可能最多只有几个 100KB,所以我预计操作系统和磁盘控制器系统会缓存文件,以避免重复读取文件的小块引起的任何性能问题。