作者buganini (霸格尼尼)
看板Python
标题Re: [问题] list相同key数值相加
时间Fri Jun 15 00:58:22 2012
https://github.com/buganini/py-rela
import rela
s=[
['102C', '1', '0'],
['1040', '0', '250'],
['1042', '5', '10'],
['1040', '0', '1000'],
['1090', '0', '40'],
['1090', '20', '0'],
['102C' '20', '0'],
['1142', '0', '21000']
]
S=rela.Rela(s)
print([
[
r[0],
str(sum([int(x) for x in r[1]])),
str(sum([int(x) for x in r[2]]))
]
for r in S.group([0])
])
是说这样吗?
print(S.group([0]).select(lambda r: [
r[0],
str(sum([int(x) for x in r[1]])),
str(sum([int(x) for x in r[2]]))
]))
後面那段也可以这样写
※ 引述《ntasop (kuli)》之铭言:
: [['102C', '1', '0'], ['1040', '0', '250'], ['1042', '5', '10'],
: ['1040', '0', '1000'], ['1090', '0', '40'], ['1090', '['1090', '20', '0'],
: ['102C' '20', '0'], ['1142', '0', '21000'],......]
: 真的不好意思写不出来,所以来请教高手,
: 有比较快的方法把上面list相同key1後key2,key3相加?
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 140.131.149.15
※ 编辑: buganini 来自: 140.131.149.15 (06/15 01:08)