Numpy数组逐元素比较优化

时间:2014-08-28 16:35:02

标签: python optimization numpy

设a是一个长度为n的numpy数组。 声明 a == max(a) 计算表达式 max(a) n次或只计算一次?

2 个答案:

答案 0 :(得分:1)

它只评估max一次。您可以通过编写自己的函数来自行测试:

def mymax(x):
    print("Calling mymax.")
    return max(x)

然后尝试

a == mymax(a)

答案 1 :(得分:1)

它计算max(a)一次,然后将(标量)结果与a中的每个(标量)元素进行比较,并为结果创建一个bool数组。