例如,如果您有 n 个相同长度的 bool 列表,则按元素布尔 AND 应该返回该长度的另一个列表,该列表在所有输入列表都为 True 的那些位置具有 True,而在其他地方为 False。
它很容易编写,我只是更愿意使用内置函数(如果存在的话)(为了标准化/可读性)。
下面是逐元素 AND 的实现:
def eAnd(*args):
return [all(tuple) for tuple in zip(*args)]
用法示例:
>>> eAnd([True, False, True, False, True], [True, True, False, False, True], [True, True, False, False, True])
[True, False, False, False, True]
原文由 bshanks 发布,翻译遵循 CC BY-SA 4.0 许可协议
没有内置的方法可以做到这一点。一般来说,列表推导等是您在 Python 中进行元素操作的方式。
Numpy 确实在其数组类型中提供了这一点(使用
&
,用于技术限制)。 Numpy 数组通常按元素执行操作。