要按照前一行之前的值进行分组,你可以使用一个变量来保存前一行的值,并在每次迭代中进行比较。下面是一个示例代码,用于按照前一行之前的值对列表进行分组:
def group_by_previous_value(lst):
groups = []
prev_value = None
for value in lst:
if value != prev_value:
groups.append([value])
else:
groups[-1].append(value)
prev_value = value
return groups
# 示例用法
lst = [1, 1, 1, 2, 2, 3, 4, 4, 5, 5, 5]
result = group_by_previous_value(lst)
print(result)
输出:
[[1, 1, 1], [2, 2], [3], [4, 4], [5, 5, 5]]
在这个示例中,我们遍历了列表lst
中的每个元素,并将其与前一个值进行比较。如果当前值与前一个值不同,则创建一个新的分组,并将当前值添加到新的分组中。如果当前值与前一个值相同,则将当前值添加到最后一个分组中。最后,返回分组的列表。