看了那么多教程,我对any迷惑了,any(iterable)与其他函数结合,可以做什么事?

语法:any(iterable)
iterable – 元组或列表。
x = any((0,1,2,3)) #123都为True
y = any((True,False,False)) #含有一个True
z = any((0,False ,'',))# 0False以及空值都是False
print(x,y,z) #结果:True True False

all() 函数用于判断给定的可迭代参数
iterable 中的所有元素是否都为 TRUE,
如果是返回 True,否则返回 False

你疑惑的点在哪儿呢?你的理解很准确呀。”any(iterable)与其他函数结合,可以做什么事?“ 一个函数有什么用,最重要的是看它的返回值和参数。any 的返回值是一个 bool,bool 值通常用来做判定。这样吧,我们来设计一个场景,通过这个场景你可能就知道了 any 和 all 的用处了。

某个综艺节目要做一个游戏,把嘉宾分为 n 个队伍,每个队伍 m 个人,游戏规则是所有组员都完成任务队伍直接晋级,组员都没有完成的队伍直接淘汰,只有部分组员完成的重新开始任务,那我们代码就可以这么写:

if all([组员成绩])
晋级
elif any([组员成绩])
重来
else
淘汰

比如,我想要完成一个功能,对一个列表中的所有数值进行判断,判断其中是否有偶数。如果其中有一个偶数,就返回True。

def check(lst):
    return any([value % 2 == 0 for value in lst])

print(check([1, 2, 3]))
print(check([1, 3, 5]))

'''
输出:
True
False
'''

但如果不用any就比较麻烦。

def check(lst):
    for value in lst:
        if value % 2 == 0:
            return True
    return False