以下是一个示例解决方案,演示了如何按关联ID收集并获取数量:
from collections import defaultdict
# 创建一个空的关联ID字典
association_dict = defaultdict(list)
# 模拟一些数据,其中每个元素包含关联ID和一些其他属性
data = [
{'id': 1, 'association_id': 'A', 'attr1': 'foo'},
{'id': 2, 'association_id': 'B', 'attr1': 'bar'},
{'id': 3, 'association_id': 'A', 'attr1': 'baz'},
{'id': 4, 'association_id': 'B', 'attr1': 'qux'},
{'id': 5, 'association_id': 'C', 'attr1': 'quux'},
]
# 按关联ID收集数据
for item in data:
association_id = item['association_id']
association_dict[association_id].append(item)
# 获取每个关联ID的数量
for association_id, items in association_dict.items():
count = len(items)
print(f'关联ID {association_id} 的数量为 {count}')
运行以上代码将输出:
关联ID A 的数量为 2
关联ID B 的数量为 2
关联ID C 的数量为 1
这个示例使用了Python的defaultdict
来创建一个空的关联ID字典。然后,它遍历数据列表,并将每个元素按关联ID添加到字典中。最后,它遍历字典并计算每个关联ID的数量。