假设有一个列表,需要根据其中元素中X的数量,按照某些条件将其分组。可以使用Python中的groupby函数,结合条件判断和lambda函数进行操作。示例代码如下:
from itertools import groupby
# 假设有一个列表data,里面元素的格式为[str, int, list]
# 需要按照第三个元素中X的数量,且第二个元素大于10,将其分组
groups = []
for key, group in groupby(data, lambda x: (len(x[2].count('X')), x[1] > 10)):
if key[1]: # 只有当第二个元素大于10才进行分组
groups.append(list(group))
这段代码中,用groupby对数据列表进行遍历,将每组分别存储在groups列表中。需要注意的是,只有当第二个元素符合条件才会进行分组,并且按照两个条件同时进行分组,即第三个元素中X的数量和第二个元素的值。
上一篇:按照条件将列分割为多个列
下一篇:按照条件将字符串按换行符分割