给定一个大文件(数百MB),我如何使用Python快速读取文件中特定开始和结束索引之间的内容?
从本质上讲,我正在寻找一种更有效的方法:
open(filename).read()[start_index:end_index]
Run Code Online (Sandbox Code Playgroud)
Dan*_*ocq 22
您可以seek
将文件放入文件中,然后从那里读取一定数量的文件.Seek允许您获取文件中的特定偏移量,然后您可以将读取限制为仅该范围内的字节数.
with open(filename) as fin:
fin.seek(start_index)
data = fin.read(end_index - start_index)
Run Code Online (Sandbox Code Playgroud)
这只会读取您正在寻找的数据.