寻找一种Python式的方法来对多个列表中的值求和:我有以下列表:
a = [0,5,2]
b = [2,1,1]
c = [1,1,1]
d = [5,3,4]
my_list = [a,b,c,d]
Run Code Online (Sandbox Code Playgroud)
我正在寻找输出:
[8,10,8]
Run Code Online (Sandbox Code Playgroud)
我用过:
print ([sum(x) for x in zip(*my_list )])
Run Code Online (Sandbox Code Playgroud)
但 zip 仅当 my_list 中有 2 个元素时才有效。任何想法?
zip适用于任意数量的迭代:
>>> list(map(sum, zip(*my_list)))
[8, 10, 8]
Run Code Online (Sandbox Code Playgroud)
当然,这大致相当于你的理解,这也有效:
>>> [sum(x) for x in zip(*my_list)]
[8, 10, 8]
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
7527 次 |
| 最近记录: |