我有两个列表
populate_name = ['jack', 'Jill', 'Mary', 'Franco', 'jack', 'James', 'Dan', 'Mary']
populate_qty = ['2', '3', '1', '3', '4', '4', '3', '3']
我想输出累计添加qty
最大的名称。
在这种情况下:
jack = (2 + 4) # 6
Jill = 3
Mary = (1 + 3) # 4
Franco = 3
James = 4
Dan = 3
这里的获胜者是 jack
,那么我如何打印出名称,即 jack
及其值,即 6
。
我尝试遍历列表并使用 populate_name.count(populate_name)
查找每个元素的出现次数,但这只是为了查找出现次数。此外,如果我在整个 range(len(populate_name))
中运行 for 循环,它会重复。
注意
实际代码中的populate_name和populate_qty由超过1K个元素组成。
最佳答案
使用collections.Counter
!
import collections
counter = collections.Counter()
for name, qty in zip(populate_name, populate_qty):
counter[name] += qty
print counter.most_common()[0][0]
关于python - 添加列表中的元素值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30959744/