我的csv数据如下所示:

17860   1
17861   1
17861   2
17861   1
17861   1
17861   1
17862   1
17863   1
17863   1
17863   1


我的目标是获取输出以在左列上显示匹配的总和,以得到如下结果:

17860    1
17861    6
17862    1
17863    3


我遇到的麻烦是如何存储5位数字并将其与该列中的其余数据进行比较,然后捕获一位数字以获取总和。

最佳答案

您可以利用Hash(又称Python中的Dictionary)数据结构。通读文件,并将第一列编号存储为键,第二列存储为值。如果发现该键已经存在,则将当前值添加到前一个值,或添加新的键本身。

hash = {}
for line in file:
    key, value = map(int, line.split())
    if key in hash:
        hash[key] += value
    else:
        hash[key] = value

08-24 14:27