解决方案1 np.add.reduce()
您可以使用np.add的reduce属性:
a = np.array([100, 100])
b = np.array([200, 200])
c = np.array([1000, 2000])
L = [a, b, c]
np.add.reduce(L)
结果是:
array([1300, 2300])
所有带有两个in-arguments的通用函数都有一个reduce属性,它适用于reduce这样的函数,即:
np.add.reduce(L)
变为:
np.add(np.add(L[0], L[1]), L[2])
如果列表L变大,则添加更多括号和相应的np.add调用.
来自文档:
Docstring:
06004
Reduces a‘s dimension by one, by applying ufunc along one axis.
解决方案2 np.sum()
或者,您可以沿第一个轴使用np.sum:
>>> np.sum(L, axis=0)
array([1300, 2300
性能
两者的表现似乎都是一样的.
对于小型阵列:
a = np.array([100, 100])
b = np.array([200, 200])
c = np.array([1000, 2000])
L = [a, b, c, a, b, c, a, b, c]