python groupby分组后计数的代码
时间: 2023-10-24 20:21:17 浏览: 74
Python中的groupby分组功能的实例代码
假设有一个包含学生姓名和所在班级的列表students:
```
students = [
{'name': 'Tom', 'class': 'A'},
{'name': 'Jerry', 'class': 'B'},
{'name': 'Alice', 'class': 'A'},
{'name': 'Bob', 'class': 'B'},
{'name': 'Cindy', 'class': 'C'},
{'name': 'David', 'class': 'B'}
]
```
我们可以使用groupby函数将学生按照班级分组,并计算每个班级中有多少名学生:
```
from itertools import groupby
students.sort(key=lambda x: x['class']) # 先按照班级排序
for k, g in groupby(students, key=lambda x: x['class']):
count = len(list(g))
print(f"班级{k}共有{count}名学生")
```
输出结果为:
```
班级A共有2名学生
班级B共有3名学生
班级C共有1名学生
```
阅读全文