如果标题中提到了数组中的任何关键字,请不要单击标题。如果标题未提及任何关键字,请单击标题。
现在它一直都在单击,我知道为什么,但是我不知道如何解决。它总是单击,因为它遍历整个数组,并且最终有一个不在标题中的关键字。想法?
ImageUtilities.loadImage()
这不应该单击标题,因为标题中有arr [2]
答案 0 :(得分:1)
如果只希望打印或不打印整个数组,则可以将any
用于理解:
if any(word in title for word in arr):
print("dont click")
else:
print("click")
实际上,代码的读法与您对问题的描述类似:
如果标题中提到了数组中的任何关键字
答案 1 :(得分:0)
在不需要索引变量时使用它们是非Python的。这里不需要range
。 (顺便说一句,stop参数是您不需要想要的第一个数字,就像列表切片一样。)
arr = ["bunny", "watch", "book"]
title = ("The book of coding. (e-book) by Seb Tota").lower()
for s in arr:
if s in title:
print "dont click"
break
else:
print "click"
Python在搜索第一个答案时允许for循环中的else子句,但在不中断循环时仍需要默认值。但是,您实际上可以在一行中实际完成此“查找优先”模式。
print next(("dont click" for s in arr if s in title), "click")