任何和所有

你可以使用 all() 来确定迭代中的所有值是否都计算为 True

nums = [1, 1, 0, 1]
all(nums)
# False
chars = ['a', 'b', 'c', 'd']
all(chars)
# True

同样,any() 确定 iterable 中的一个或多个值是否为 True

nums = [1, 1, 0, 1]
any(nums)
# True
vals = [None, None, None, False]
any(vals)
# False

虽然此示例使用列表,但重要的是要注意这些内置函数适用于任何可迭代的,包括生成器。

vals = [1, 2, 3, 4]
any(val > 12 for val in vals)
# False
any((val * 2) > 6 for val in vals)
# True