gpt4 book ai didi

python - 在 Python 中组合 3 个 bool 掩码

转载 作者:太空狗 更新时间:2023-10-29 20:33:33 27 4
gpt4 key购买 nike

我有 3 个列表:

a = [True, False, True]
b = [False, False, True]
c = [True, True, False]

当我打字时

a or b or c

我想取回一个列表

[True, True, True]

但是我回来了

[True, False, True]

有什么想法吗?我如何组合这些面具?

最佳答案

您的 运算符将列表作为整个对象而不是它们的元素进行比较。由于 a 不是空列表,它的计算结果为真,并成为 的结果。 bc 甚至没有计算。

要按位置生成三个列表的逻辑或,您必须遍历它们的内容并对每个位置的值进行或运算。要将一堆可迭代对象转换为它们的分组元素列表,请使用 zip()。要检查可迭代对象中的任何元素是否为真(其全部内容的或),请使用 any()。使用列表理解同时执行这两个操作:

mask = [any(tup) for tup in zip(a, b, c)]

关于python - 在 Python 中组合 3 个 bool 掩码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20027131/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com