如果你有。
if any(word in sentence for sentence in sentences):
和... sentences
是一个长长的列表,比如说,10000个句子长度的字符串,将 any()
遍历整个列表以确定是否有真值,还是一旦找到真值就会停止查找,因为 any()
值已经被确定为真?
如果真的是不顾一切地遍历整个列表,那么当然如果使用for循环并在找到后中断会比使用 any()
这就是我问的原因。
是的,它确实是这样短路的。从 文件:
相当于。
def any(iterable): for element in iterable: if element: return True return False
一个简单的方法是用一个大的或无限的迭代法来确认。
>>> any(True for i in range(1_000_000_000_000))
True
(瞬间)