扫描文本文件中的单词

时间:2017-08-20 04:21:36

标签: python python-3.x file

我是python的新手,正在开发一个项目来提高我的技能,它是一个文本文件压缩器; 我有文件扫描部分的问题,我希望它读取文本文件并找到一个单词。 任何帮助将非常感激。

我的代码:

marked

1 个答案:

答案 0 :(得分:0)

代码的主要问题是for循环中的return False

假设这是你的文件:

word1
word2
word3

您正在寻找word3。现在,这就是你的程序所做的事情:

word3 == word1 ? 
No, so break

您需要的是:

word3 == word1 ?
No, next iteration

word3 == word2 ?
No, next iteration

word3 == word3 ?
return True

这就是您的代码应该如何:

def check(word): 
    with open("res\powerserv 1.txt") as datafile: 
        for line in datafile: 
            if word in line: 
                return True 

    return False

print(check('your word'))

return False超出了循环范围。另外,请考虑使用with...as上下文管理器来处理文件的打开和关闭。