如何在python3中计算列表中每个元素的总和?虽然我可以做到,但有什么聪明的方法吗?
data = [[1,2],[1], [3,4,2]]
sum_length = 0
for d in data:
sum_length += len(d)
print(sum_length) # 6
请您参考如下方法:
最短最快的方法是应用 functional programming style与 map()和 sum() :
>>> data = [[1,2],[1], [3,4,2]]
>>> sum(map(len, data))
6
在 Python 2 中,使用 itertools.imap代替 map 以获得更好的内存性能:
>>> from itertools import imap
>>> data = ['a', 'bc', 'def', 'ghij']
>>> sum(imap(len, data))
10
