貌似可以通過collections.defaultdict
person_dict = {1665845 : Person(1665845, stuff), 1294919 : Person(1294919, stuff)} # existing dictionary
l = [['1665845', '2001-01-06', '28,448,615,27,705'], ['1665845', '2001-01-10', '218,37,356,621,466,319,147,774,231,167,399,150,417,34,3'], ['1294919', '2001-01-04', '639,118,328,413,222,491,738,389,11,372,183,650,281,643,26,398,685,171'], ['1294919', '2001-01-10', '314,611,485,208,515,240,586,511,713,58,28,392,140,529,353,489,375,412,596'], ['1665845', '2001-01-04', '670,665,681,184,22,752,390,523,507,171,467,19,296,720,58,230,721,686'], ['1665845', '2001-01-02', '432,210,732,204,771,555,448,82,343'], ['1294919', '2001-01-06', '113,225,564,554,392,544,313'], ['1294919', '2001-01-05', '437,219,239,545,588,303,477,384,87,254,429,635,188,372,572,712,383'], ['1294919', '2001-01-03', '771,373'], ['1294919', '2001-01-08', '650,679,492,524,202,689,224,268,195,455,400,235,518,505']]
from collections import defaultdict
d_dict = defaultdict(int)
for k,_,v in l:
d_dict[int(k)]+=sum(int(i) for i in v.split(','))
#dict(d_dict)
#{1294919: 31022, 1665845: 17701}
for k in person_dict:
person_dict[k] = Person(k, stuff, d_dict[k])
如何做到這一點,確實如此。什麼是人?串?自定義對象? Namedtuple?什麼是總結? –
對不起,我剛剛注意到這是多麼糟糕,我將修復它 –