3 回答

TA貢獻(xiàn)2012條經(jīng)驗(yàn) 獲得超12個(gè)贊
你幾乎在那里
d = {}
f = [ '1, deepak, 15',
'2, nayak, 10',
'3, deepak, 10',
'4, nayak, 13']
for line in f:
# by splitting on the comma and trailing space
# you can unpack those three entries into a throw-away var,
# k, and v and you only need to convert v to int
_, k, v = line.split(', ')
d[k] = d.get(k, 0) + int(v)
d
{'deepak': 25, 'nayak': 23}

TA貢獻(xiàn)1848條經(jīng)驗(yàn) 獲得超10個(gè)贊
d={}
d['deepak'] = 0
d['nayak'] = 0
f = [ '1, deepak, 15',
'2, nayak, 10',
'3, deepak, 10',
'4, nayak, 13']
for lines in f:
print(lines)
##appropriate logic to excute#
line = lines.split(', ')
d[line[1]] += int(line[-1])
print(d)

TA貢獻(xiàn)1776條經(jīng)驗(yàn) 獲得超12個(gè)贊
您可以Counter從collections模塊中使用,以減少使用常規(guī) dict 時(shí)所需的一些樣板文件
from collections import Counter
f = [
'1, deepak, 15',
'2, nayak, 10',
'3, deepak, 10',
'4, nayak, 13'
]
result = Counter()
for x in f:
_, name, count = x.split(', ')
result[name] += int(count)
print(result)
添加回答
舉報(bào)