我想查找列表的元素内是否包含特定的字符串。如果找到了字符串,我想打印出“找到字符串”,否则要打印“找不到字符串”。
但是,我想到的代码会多次打印“找不到字符串”。我知道原因,但是我不知道如何解决它,只打印其中一条消息。
animals=["dog.mouse.cow","horse.tiger.monkey",
"badger.lion.chimp","trok.cat. bee"]
for i in animals :
if "cat" in i:
print("String found")
else:
print("String not found")
〜
最佳答案
找到字符串后,在break
块中添加if
语句,并将else
移至for循环的else
。如果在这种情况下找到了字符串,则循环将中断并且永远不会到达else,如果循环没有制动,则将达到else并打印'String not found'
。
for i in animals:
if 'cat' in i:
print('String found')
break
else:
print('String not found')
关于python - 从for循环仅打印一次消息,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/18763905/