我有一本字典如下
d = {0:[1,2,3], 1:[2,3,4], 2:[3,4,5], 3:[4,5,6]}
什么是Python中最紧凑的形式,用于对列表中的字典值的相同列元素求和,或者如何从字典值中获得以下结果?
[(1+2+3+4), (2+3+4+5), (3+4+5+6)]=[10,14,18]
答案 0 :(得分:4)
没有NumPy
>>> d
{0: [1, 2, 3], 1: [2, 3, 4], 2: [3, 4, 5], 3: [4, 5, 6]}
>>> map(sum, zip(*d.values()))
[10, 14, 18]
使用NumPy
>>> import numpy as np
>>> d
{0: [1, 2, 3], 1: [2, 3, 4], 2: [3, 4, 5], 3: [4, 5, 6]}
>>> map(np.sum, zip(*d.values()))
[10, 14, 18]