我有一个线程,我在其中使用 zipfile.ZipFile().read()
读取一个 zip 文件,但出现内存错误。
我知道 read()
将整个文件加载到内存中。解压缩后的文件大小超过 100MB。我也尝试过使用 zipfile.ZipFile().open().readlines()
,但它需要太多时间。
有什么方法可以在不出现内存错误的情况下快速读取文件?
最佳答案
假设您正在尝试读取一个压缩文本文件,您可以处理 ZipFile.open()
返回的类文件对象。作为一个迭代器,并逐行处理它......
from zipfile import ZipFile
zip = ZipFile('myzip.zip')
stream = zip.open('myfile.txt')
for line in stream:
do_something_with(line)
关于python - 在 python 中读取 zip 文件时出现内存错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17220370/