对于大型数组,检查多个条件是否均为 True 或均为 False 的最快方法是什么?运营商的选择有影响吗?为什么或者为什么不?这是一个虚拟示例:
import numpy
a = numpy.ones((1000000,))
b = numpy.zeros((1000000,))
#c = (a == 1) * (b == 0)
#c = (a == 1) & (b == 0)
# other faster method of getting c?
注意编辑...
请您参考如下方法:
我不太确定这对速度有影响,但在这种情况下您可以通过使用就地操作来节省内存。
尝试这样的事情:
c = a == 1
c &= b == 0 # (Or *=)
这应该需要更少的数组临时副本并使用更少的内存。
