我有一个数组
myarray = [[a, b], [c, d], [e, f]]
我想得到
myarray_2 = [a + c + e, b + d + f]
我怎样才能在没有循环的情况下做到这一点?什么是最有效的方法,或者可能是最 Pythonic 的方法?
一种单行方法可能是转置矩阵并对行求和:
list(map(sum, zip(*myarray)))
该习语zip(*myarray)
通过在包含每行相应元素的元组上创建迭代器来转置输入。
如果您正在处理数值数据,使用 numpy 可能是更好的方法:
np.array(myarray).sum(axis=0)
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句