如何将文件中的行添加到数组中?

时间:2014-04-26 10:26:44

标签: python arrays

我正在使用python从基于时间戳的文件中读取特定行。我想将这些行添加到数组中。但是,当我这样做时,数组是空的。这是我的代码:

def parse(self):
    with open(self.filename) as errorfile:
        data = []
        for line in errorfile:
            # Look in each line for Warning message
            if self.is_Warning(line):
                data.append(line)
            return data

def is_Warning(self,line):
    if line.find("Warning") >= 0:
        ts = time.strptime(line[:15].strip(), "%b %d %H:%M:%S")
        print "==================== %s" % ts

有人可以帮忙吗?

2 个答案:

答案 0 :(得分:1)

您的is_Warning函数未返回TrueFalse或其他任何内容。在return True块中添加if

您还可以使用更加pythonic和可读性"Warning" in line而不是line.find("Warning")>= 0

另见Chirila's answer

答案 1 :(得分:1)

看起来像这样:

    for line in errorfile:
        # Look in each line for Warning message
        if self.is_Warning(line):
            data.append(line)
        return data

应该是:

    for line in errorfile:
        # Look in each line for Warning message
        if self.is_Warning(line):
            data.append(line)
    return data