按照一组任意的键对字典列表进行分组,并对其中一组不同的键进行求和。
创始人
2024-08-26 03:01:32
0

以下是一个示例代码,用于按照一组任意的键对字典列表进行分组,并对其中一组不同的键进行求和。

from collections import defaultdict

def group_and_sum_dicts(dicts, group_key, sum_key):
    groups = defaultdict(int)
    for d in dicts:
        group_value = d[group_key]
        sum_value = d[sum_key]
        groups[group_value] += sum_value
    return groups

# 示例数据
dicts = [
    {'group': 'A', 'value': 1},
    {'group': 'B', 'value': 2},
    {'group': 'A', 'value': 3},
    {'group': 'B', 'value': 4},
    {'group': 'C', 'value': 5},
    {'group': 'C', 'value': 6}
]

# 按照 'group' 键进行分组,并对 'value' 键进行求和
result = group_and_sum_dicts(dicts, 'group', 'value')

# 输出结果
for group, total_value in result.items():
    print(f"Group {group}: {total_value}")

上述代码中,group_and_sum_dicts 函数接受一个字典列表 dicts,一个用于分组的键 group_key,以及一个用于求和的键 sum_key。该函数使用 defaultdict 创建一个默认值为 0 的字典 groups,用于存储分组后的结果。然后,遍历字典列表 dicts,对每个字典中的 group_keysum_key 进行提取,并将 sum_key 的值累加到对应的分组中。最后,返回分组后的结果字典 groups

示例数据中的字典列表 dicts 包含了三个不同的分组 'A'、'B' 和 'C',以及对应的值。运行该代码会按照分组键 'group' 进行分组,并对值键 'value' 进行求和。最后,输出每个分组的求和结果。

相关内容

热门资讯

安卓系统怎么连不上carlif... 安卓系统无法连接CarLife的原因及解决方法随着智能手机的普及,CarLife这一车载互联功能为驾...
iwatch怎么连接安卓系统,... 你有没有想过,那款时尚又实用的iWatch,竟然只能和iPhone好上好?别急,今天就来给你揭秘,怎...
oppo手机安卓系统换成苹果系... OPPO手机安卓系统换成苹果系统:现实吗?如何操作?随着智能手机市场的不断发展,用户对于手机系统的需...
安卓平板改windows 系统... 你有没有想过,你的安卓平板电脑是不是也能变身成Windows系统的超级英雄呢?想象在同一个设备上,你...
iphone系统与安卓系统更新... 最近是不是你也遇到了这样的烦恼?手机更新系统总是失败,急得你团团转。别急,今天就来给你揭秘为什么iP...
安卓系统上滑按键,便捷生活与高... 你有没有发现,现在手机屏幕越来越大,操作起来却越来越方便了呢?这都得归功于安卓系统上的那些神奇的上滑...
安卓系统连接耳机模式,蓝牙、有... 亲爱的手机控们,你们有没有遇到过这种情况:手机突然变成了“耳机模式”,明明耳机没插,声音却只从耳机孔...
希沃系统怎么装安卓系统,解锁更... 亲爱的读者们,你是否也像我一样,对希沃一体机上的安卓系统充满了好奇呢?想象在教室里,你的希沃一体机不...
安装了Anaconda之后找不... 在安装Anaconda后,如果找不到Jupyter Notebook,可以尝试以下解决方法:检查环境...
安卓平板改双系统,轻松实现一机... 你有没有想过,你的安卓平板可以变成一个双系统的小怪兽呢?没错,就是那种既能流畅运行安卓应用,又能优雅...