Python 的all, any是非常便捷的进行逻辑判断的函数,里面的参数需要是iterable,对于两个函数的介绍网上有比较多的资源,但其逻辑判断,最终输出结果 大都却是各种排列组合,为了方便记忆,这里进行一下总结(没有阅读源码),只做辅助记忆
all() 函数:
可以认为是 与 操作,目的是将参数的所有元素进行逻辑与的判断,最终输出结果。这个时候就可以思考了,在内部实现时,怎么来实现逻辑与呢?如果要你自己来写代码,一个最简单的方式就是对参数进行迭代,当遇到False或0等时,返回False。迭代完毕,说明参数里面没有False,所以返回True。这样当参为空时,自然而然输出就是True了
all.png
any() 函数:
可以认为是 或 操作,将所有参数进行逻辑或操作,同上。 在编码实现时,迭代时,当遇到True或非0 等时,返回True。迭代完毕没有返回说明这时参数里面没有True,此时返回False
any.png
网友评论