根据另一个时间戳值的月份对列表元素的值进行分组和求和

2024-09-27 04:28:37 发布

您现在位置:Python中文网/ 问答频道 /正文

我在Python中有以下列表:

L_initial=[[1,'2019-01-01'], [1,'2019-01-01'],[2,'2019-02-02'],[4,'2019-03-03'],[5,'2019-03-04']]

我想总结所有元素的第一个值,按同一个月的时间戳表单字符串分组,最终列表如下:

L_final=[[2,'2019-01'],[2,'2019-02'],[9,'2019-03']]

我可以按天计算,但不能按月计算,这是我每天求和的代码:

dico = {}
for v, k in liste_initial:
    dico[k] = dico.get(k, 0) + v
liste_final=[[v, k] for k, v in dico.items()]

Tags: 字符串代码in元素表单列表forget
1条回答
网友
1楼 · 发布于 2024-09-27 04:28:37

由于您的日期为YYYY-MM-DD格式,您只需将每个日期的前7个字符按月分组即可:

liste_initial = [[1,'2019-01-01'], [1,'2019-01-01'],[2,'2019-02-02'],[4,'2019-03-03'],[5,'2019-03-04']]

dico = {}
for v, k in liste_initial:
    dico[k[:7]] = dico.get(k[:7], 0) + v
    
liste_final=[[v, k] for k, v in dico.items()]

输出:

[[2, '2019-01'], [2, '2019-02'], [9, '2019-03']]

相关问题 更多 >

    热门问题