按照对象的另一个属性将一个属性分组
创始人
2024-08-23 19:00:34
0

假设我们有一个Person对象列表,其中每个对象都有一个“姓名”属性和一个“年龄”属性。我们想按照年龄将人员分组,并计算每个年龄组中人员的数量。

可以使用Python的defaultdict和Counter来解决这个问题。

from collections import defaultdict, Counter

# 创建一个Person对象列表
people = [
    {'姓名': '张三', '年龄': 25},
    {'姓名': '李四', '年龄': 30},
    {'姓名': '王五', '年龄': 25},
    {'姓名': '赵六', '年龄': 30},
    {'姓名': '钱七', '年龄': 25},
]

# 创建一个defaultdict(Counter)对象
# 将“年龄”作为默认键,将一个Counter对象作为默认值
people_by_age = defaultdict(Counter)

# 在defaultdict中的Counter对象中增加每个年龄组的人员数量
for person in people:
    age = person['年龄']
    people_by_age[age]['count'] += 1

# 打印每个年龄组中人员的数量
for age, counts in people_by_age.items():
    print(f"年龄为{age}的人员数量为{counts['count']}")

输出:

年龄为25的人员数量为3
年龄为30的人员数量为2

相关内容

热门资讯

专业透视!wepoker辅助透... 专业透视!wepoker辅助透视软件,微乐小程序辅助收费,资料教程(果真有挂)-哔哩哔哩1、wepo...
辅助透视!hhpoker辅助软... 辅助透视!hhpoker辅助软件是真的么,小程序微乐斗地主辅助,项目教程(有挂猫腻)-哔哩哔哩1、每...
专业透视!wepoker私人局... 专业透视!wepoker私人局开挂视频,微乐小程序微乐家乡辅助器,阶段教程(有挂教学)-哔哩哔哩1、...
详细透视!wepoker轻量版... 详细透视!wepoker轻量版透视方法,微信小程序辅助器免费版,模板教程(有挂方略)-哔哩哔哩1、点...
详情透视!aapoker辅助软... 详情透视!aapoker辅助软件合法吗,微信卡五星小程序辅助,窍门教程(有挂方法)-哔哩哔哩1、游戏...
揭幕透视!德普之星app安卓版... 揭幕透视!德普之星app安卓版破解版,微乐小程序辅助多少钱,项目教程(有挂方法)-哔哩哔哩1、首先打...
推荐透视!黑侠破解wepoke... 推荐透视!黑侠破解wepoker,微乐自建房辅助工具,积累教程(有挂功能)-哔哩哔哩黑侠破解wepo...
必备透视!红龙poker辅助平... 必备透视!红龙poker辅助平台,微乐四川小程序修改器,指引教程(有挂秘诀)-哔哩哔哩;1、该软件可...
解迷透视!wepoker透视底... 解迷透视!wepoker透视底牌,微信小程序微乐辅助器免费版v2.0,大纲教程(有挂规律)-哔哩哔哩...
开挂透视!红龙poker辅助平... 开挂透视!红龙poker辅助平台,微信微乐开挂,演示教程(有挂规律)-哔哩哔哩1、任何红龙poker...