温馨提示×

Python中groupby函数怎么使用

小亿
157
2023-08-01 18:58:05
栏目: 编程语言

在Python中,groupby函数是itertools模块中的函数,用于根据指定的键对可迭代对象进行分组。它返回一个迭代器,其中每个元素是一个(key, group)的元组,其中key是分组的键,group是一个迭代器,包含了与该键相关联的所有元素。

以下是groupby函数的基本语法:

itertools.groupby(iterable, key=None)

其中,iterable是可迭代对象,例如列表、字符串、元组等,key是一个可选的函数,用于从每个元素中提取分组的键。如果未提供key函数,则默认使用元素本身作为键。

以下是一个简单的示例,演示了如何使用groupby函数对列表进行分组:

import itertools
data = [1, 1, 2, 3, 3, 4, 5, 5, 5]
groups = itertools.groupby(data)
for key, group in groups:
print(key, list(group))

输出结果为:

1 [1, 1]
2 [2]
3 [3, 3]
4 [4]
5 [5, 5, 5]

在上述示例中,列表data被分为了5组,每组具有相同的元素。通过遍历groups迭代器,我们可以获取每个分组的键以及与之相关联的元素列表。

0