我是python的新手,正在开发一个项目来提高我的技能,它是一个文本文件压缩器; 我有文件扫描部分的问题,我希望它读取文本文件并找到一个单词。 任何帮助将非常感激。
我的代码:
marked
答案 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
上下文管理器来处理文件的打开和关闭。