python中的大文本文件

时间:2016-01-14 19:40:47

标签: python

我必须编写一些Python代码来读取以下格式的文件:

<doc> 
Hello Word
</doc>
<doc>
Hello blah blah
</doc>

然后我必须计算这些标签中有多少包含确定的单词。

例如,如果我正在搜索单词blah,它应该返回1,如果我正在搜索单词Hello,它应该返回2.

另外,有没有办法有效地做到这一点?文件非常大(大约250mb的文本)。

1 个答案:

答案 0 :(得分:-1)

加载文件并逐行读取,增加出现次数。

# Returns how many times s_string shows up in doc
def search_for( s_string, doc):
    count = 0
    with open(doc) as rfile:
        for line in rfile:
            if(line.find(s_string) > -1):
                count = count + 1
    return count