【发布时间】:2015-02-10 16:45:33
【问题描述】:
假设我在列表中存储一个布尔值,其中包含一个名为 save_status 的变量
我会这样保存
[ True, False, True, ...]
我希望能够将and 应用于列表的所有元素,如下所示:
True and False and True,这样我就知道列表的所有元素何时为真
【问题讨论】:
-
您是否考虑过使用
any或all?
假设我在列表中存储一个布尔值,其中包含一个名为 save_status 的变量
我会这样保存
[ True, False, True, ...]
我希望能够将and 应用于列表的所有元素,如下所示:
True and False and True,这样我就知道列表的所有元素何时为真
【问题讨论】:
any 或all?
使用all 表示“和”,使用any 表示“或”:
>>> my_list = [ True, False, True ]
>>> all(my_list)
... False
>>> any(my_list)
... True
【讨论】:
all([ True, False, True, ...])
【讨论】:
尝试另一种方式:
>>> all_true = [ True, True, True]
>>> mix = [ True, False, True]
>>> sum(all_true) == len(all_true)
True
>>> sum(mix) == len(mix)
False
>>>
【讨论】: