python分组累加求和
时间: 2023-10-23 19:36:16 浏览: 107
你可以使用Python的`itertools.groupby`和`sum`函数来实现分组累加求和。首先,你需要对列表进行分组排序,然后使用`sum`函数对每个组进行求和。这是一个示例代码:
```python
from itertools import groupby
# 假设你有一个包含键值对的列表
data = [{'key': 'A', 'value': 1},
{'key': 'B', 'value': 2},
{'key': 'A', 'value': 3},
{'key': 'B', 'value': 4}]
# 按照 'key' 进行分组排序
data.sort(key=lambda x: x['key'])
groups = groupby(data, key=lambda x: x['key'])
# 对每个组进行累加求和
result = []
for key, group in groups:
sum_value = sum(item['value'] for item in group)
result.append({'key': key, 'sum': sum_value})
print(result)
```
输出结果为:
```
[{'key': 'A', 'sum': 4}, {'key': 'B', 'sum': 6}]
```
这个例子中,我们将列表`data`按照键值`'key'`进行分组排序,然后对每个组的`'value'`进行累加求和,最后将结果存储在列表`result`中。
阅读全文