使用Python中的itertools.groupby函数对列表进行分组处理。首先将列表按照某一条件排序,然后再分组。具体实现代码如下:
import itertools
mylist = [1, 3, 2, 2, 4, 1, 5, 3, 2, 2, 1] sorted_list = sorted(mylist) # 先排序 grouped_list = [] for key, group in itertools.groupby(sorted_list): grouped_list.append(list(group)) # 转换成列表方便查看
print(grouped_list)
这段代码中,使用sorted()函数对mylist进行排序,然后使用itertools.groupby()函数对排序后的列表进行分组。groupby()函数返回一个生成器,生成器可以按照某一条件将列表分成若干个小组,其中每一组都会返回相同的元素值。最后将每个小组转换成列表并添加到grouped_list中。
上一篇:按顺序分配正负值的位置