如果在文本文件中找不到字符串,我想打印未找到ONCE。但是字符串在文件中有多少行后仍然没有找到打印。因为它读了所有的线。因此根据其中的行数打印所有未找到的内容。还有其他办法吗?
import os
f = open('D:/Workspace/snacks.txt', "r");
class line:
for line in f.readlines():
if line.find('chocolate') != -1:
print "found ", line
elif line.find('milkshake') != -1:
print "found ", line
else:
print "not found"
答案 0 :(得分:0)
你在python中寻找break语句吗?正如名称所反映的那样,这个陈述只会让你脱离循环。
<强>例如强>
for line in f.readlines():
if line.find('chocolate') != -1:
print "found ", line
elif line.find('milkshake') != -1:
print "found ", line
else:
print "not found"
break
答案 1 :(得分:0)
首先,删除此行 - class line:
。重新缩进它下面的行。
有两件事可以帮到你:
break
条款else
循环中的for
子句
醇>
请阅读control flow上的官方教程。
然后代码就像这样
>>> for line in f.readlines():
... if line.find('chocolate') != -1 or line.find('milkshake') != -1:
... print "found ", line
... break
... else:
... print "not found"
...
not found