我有以下列表:
x = [['A', 300], ['C', 200], ['B', 1500], ['A', 1000], ['C', 1000]]
现在我想生成一个格式相似的新列表,但是列表列表中重复字符串的所有整数都汇总在一起。我想要的结果是:
x2 = [['A', 1300], ['B', 1500], ['C', 1200]]
如何做到这一点?
答案 0 :(得分:1)
由于最终结果类似于字典,因此您可以使用字典来制作它。
import collections
x = [['A', 300], ['C', 200], ['B', 1500], ['A', 1000], ['C', 1000]]
d = collections.defaultdict(int)
for k, v in x:
d[k] += v
x2 = d.items()
# Or list(d.items()) if you really need a list
# And list(map(list, d.items())) if you need a list of
# lists, and not a list of tuples.