Skip to main content
 首页 » 编程设计

python之检查两个条件是否为真最快的方法是什么

2025年05月04日9kuangbin

对于大型数组,检查多个条件是否均为 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 *=) 

这应该需要更少的数组临时副本并使用更少的内存。