我有一个很大的gzip文件(11GB),我想尽可能快地用Python打印我想要的行。我尝试使用linecache.getline()
来完成此操作,但是由于自己的函数打开了文件,因此您无法使用gzip
来打开文件。
答案 0 :(得分:0)
linecache
希望获得一个文本文件。使用gzip
压缩的文件不是是文本文件。做您想做的事情需要两个步骤。 (1)解压缩文件,以便获得文本文件。 (2)在文本文件上使用linecache
。您可以在Python中完成这两项操作,但只能一次又一次。
我了解到您希望到达特定行而不必先解压缩整个zipfile。但这不是zipfile压缩的工作方式。压缩数据中不可能有任何内容与文本行的概念相对应。