有没有用于zip文件中正则匹配的Python模块

2024-04-25 14:19:21 发布

您现在位置:Python中文网/ 问答频道 /正文

我有超过一百万个文本文件压缩成40个zip文件。我还有一份500种手机型号的清单。我想知道一个特定的模型在文本文件中被提到的次数。在

有没有python模块可以在不解压缩的情况下对文件进行正则表达式匹配。有没有一种简单的方法可以不用解压来解决这个问题?在


Tags: 模块文件方法模型情况zip次数手机
3条回答

您可以遍历zip文件,使用zipfile模块读取单个文件并在这些文件上运行regex,从而避免了一次解压缩所有文件。在

我相当肯定你不能对压缩的数据运行正则表达式,至少没有意义。在

要访问zip文件的内容,您必须解压缩它,尽管zipfile包使这相当容易,因为您可以单独解压缩一个归档文件中的每个文件。在

Python zipfile module

你什么都不想做。在

但是,有一个pythonzipfile模块可以使这项工作变得容易。下面是如何迭代文件中的行。在

#!/usr/bin/python

import zipfile
f = zipfile.ZipFile('myfile.zip')

for subfile in f.namelist():
    print subfile
    data = f.read(subfile)
    for line in data.split('\n'):
        print line

相关问题 更多 >