gpt4 book ai didi

python - numpy 逻辑与 : unexpected behaviour

转载 作者:太空宇宙 更新时间:2023-11-03 12:16:06 27 4
gpt4 key购买 nike

假设我给你以下 bool 数组:

b1 = np.array([ True,  True, False,  True ])
b2 = np.array([ True, False, False, True ])
b3 = np.array([ True, True, True, False ])

如果将它们AND 在一起,您会期望得到以下结果:

b4 = np.array([ True, False, False, False ])

对吧?如果不是,请解释。如果我们同意,那么,为什么会发生以下情况?

>>> np.logical_and(b1, b2, b3)
array([ True, False, False, True ])

np.logical_and(np.logical_and(b1, b2), b3) 确实给出了预期的结果。

最佳答案

查看documentation of np.logical_and .与大多数 NumPy 运算符函数一样,第三个参数是 out 参数,用于指定目标数组。它不是操作数!将 b3 放在那里只会覆盖 b3 的内容。

在大多数情况下,使用 & 更清晰、更简单:

b4 = b1 & b2 & b3

关于python - numpy 逻辑与 : unexpected behaviour,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24253243/

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