在条件判断中使用 all() / any()
Posted botoo
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在条件判断中使用 all() / any()相关的知识,希望对你有一定的参考价值。
在条件判断中使用 all() / any()
all()
和 any()
两个函数非常适合在条件判断中使用。这两个函数接受一个可迭代对象,返回一个布尔值,其中:
all(seq)
:仅当seq
中所有对象都为布尔真时返回True
,否则返回False
any(seq)
:只要seq
中任何一个对象为布尔真就返回True
,否则返回False
假如我们有下面这段代码:
def all_numbers_gt_10(numbers):
"""仅当序列中所有数字大于 10 时,返回 True
"""
if not numbers:
return False
for n in numbers:
if n <= 10:
return False
return True
如果使用 all()
内建函数,再配合一个简单的生成器表达式,上面的代码可以写成这样:
def all_numbers_gt_10_2(numbers):
return bool(numbers) and all(n > 10 for n in numbers)
def all_numbers_gt_10_2(numbers): return bool(numbers) and all(n > 10 for n in numbers) x = [-10] print(all_numbers_gt_10_2(x))
False
以上是关于在条件判断中使用 all() / any()的主要内容,如果未能解决你的问题,请参考以下文章
Postgres数据库使用any和all判断数组解决IN和NOT IN条件参数超限的问题
Postgres数据库使用any和all判断数组解决IN和NOT IN条件参数超限的问题
错误记录Android Studio 配置 AspectJ 报错 ( all buildscript {} blocks must appear before any plugins {} )(代码片
LINQ to SQL语句之Exists/In/Any/All/Contains