首页 > 解决方案 > Python:如何访问特定嵌套列表中的值

问题描述

如果我有嵌套列表:

[
 ['14', '6'],
 ['11', '9'],
 ['3', '-12'],
 ['14', '-6'],
 ['11', '8'],
 ['7', '1'],
 ['4', '-6'],
 ['3', '-12'],
 ['1', '2']
]

我如何能够搜索每个列表,并将i[[1]] 值与列表中的每个其他项目进行比较?我试图做到这一点,如果该i[0]值等于i[0]列表中的另一个值,我想将它们的i[[1]]值加在一起。例如。['11', '9']['11','8']具有相同的i[0]值,因此我希望将它们加在一起并生成 ['11', '17']。

在此处输入图像描述

标签: python

解决方案


使用字典收集聚合:

agg = {}
for x, y in lst:
    agg[x] = agg.get(x, 0) + int(y)

[[k, str(v)] for k, v in agg.items()]
# [['14', '0'], ['11', '17'], ['3', '-24'], ['7', '1'], ['4', '-6'], ['1', '2']]

推荐阅读