用zip表示python中列表的字典

时间:2019-02-27 16:57:02

标签: python python-3.x

我已经尝试过zip并使用列表列表,并且可以正常工作。

data_list = [
   [1, 2, 3],
   [1, 3, 7],
   [5, 8, 1]
]
total = [sum(x) for x in zip(*data_list)]

total符合预期:

[7, 13, 11]

现在我有字典

data_dict = {
   'a': [1, 2, 3],
   'b': [1, 3, 7],
   'c': [5, 8, 1]
}

,我希望获得与上述完全相同的输出。我该如何使用data_dict来做到这一点?

1 个答案:

答案 0 :(得分:2)

total = [sum(x) for x in zip(*data_dict.values())]

values()返回字典中各项的值。这为您提供了一个可迭代的列表,与第一个示例非常接近。