python - 从python中的压缩文件中逐行读取

标签 python

我正在尝试用 python 读取压缩文件。我只想读取名称中带有“调试”的文件,并且只打印其中包含 BROKER_LOGON 的行。它以某种方式不会逐行读取,而是打印其中包含 BROKER_LOGON 的整个文件。请告诉我是否有办法从压缩文件中逐行读取。

import os

import zipfile

import re

def main():
try:
    root = zipfile.ZipFile("C:/Documents and Settings/Desktop/20110526-1708-server.zip", "r")
except:
    root = "."  
for name in root.namelist():
    i = name.find("debug")
    if i>0:
        line = root.read(name).find("BROKER_LOGON")
        if line >0:
            print line


if __name__== "__main__":
    main()

最佳答案

你可以直接在压缩文件中打开()一个文件

尝试这样的事情:

try:
    root = zipfile.ZipFile("C:/Documents and Settings/Desktop/20110526-1708-server.zip", "r")
except:
    root = "."  
for name in root.namelist():
    i = name.find("debug")
    if i>0:
        lines = root.open(name).readlines()
        for line in lines:
            if line.find("BROKER_LOGON") > 0:
                print line

您可以对从 readlines() 返回的行列表做任何您想做的事情。

关于python - 从python中的压缩文件中逐行读取,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6428864/

相关文章:

python - 以数字方式对字符串列表进行排序

python - 字典是在 Python 3.6+ 中排序的吗?

Python:如何为多人游戏序列化对象?

python - youtube_dl 使用 Python 获取音频链接

python - 'Murmur3Partitioner' 的 C 扩展未编译

python - SymPy:交换两个变量

python - 如何在 Python 中实现 'Parameter Object' 重构?

python - 无法让 Web.py 和 jQuery 计算出 AJAX GET 请求(它变成了 OPTIONS 请求)

python - 绘制决策边界 matplotlib

python - 如何训练 tensorflow deeplab 模型?