任何非短路变体

reduce 在完全迭代完 iterable 之前不会终止迭代,因此它可用于创建非短路 any()all() 函数:

import operator
# non short-circuit "all"
reduce(operator.and_, [False, True, True, True]) # = False

# non short-circuit "any"
reduce(operator.or_, [True, False, False, False]) # = True