如何检查列表是否包含布尔值

srk*_*rky 6 python list

这是我的代码的一部分:

for d in errors[:]:
    if False in d:
        Ic.append(current_mA2)
Run Code Online (Sandbox Code Playgroud)

这是在errors

[True, True, True, False, True, True, False, True,True,True, True, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False,False]
Run Code Online (Sandbox Code Playgroud)

我只想知道值 False 是否在列表中。

小智 12

没有人建议使用all()(python doc here )。所有检查列表中的所有值是否解释为 True,这意味着,如果其中至少一个为 False,它将返回 False:

> a_list = [True, True, False]
> b_list = [True, True, True]
> all(a_list)
False
> all(b_list)
True
Run Code Online (Sandbox Code Playgroud)


mid*_*dor 7

为什么不只是:

if False in errors:
    Ic.append(current_mA2)
Run Code Online (Sandbox Code Playgroud)

直接检查是否False在列表中。list实现__contains__魔法方法,所以你可以这样做。