以下是一个示例代码,用于按照id对列中连续的值进行计数:
def count_continuous_values(ids):
count = 1
result = []
for i in range(1, len(ids)):
if ids[i] == ids[i-1]:
count += 1
else:
result.append((ids[i-1], count))
count = 1
result.append((ids[-1], count))
return result
# 示例用法
ids = [1, 1, 1, 2, 2, 3, 4, 4, 4, 4]
result = count_continuous_values(ids)
print(result)
运行以上代码,输出结果为:
[(1, 3), (2, 2), (3, 1), (4, 4)]
解释:代码中的 count_continuous_values
函数接受一个列表 ids
作为参数,遍历该列表并统计连续相同值的个数。在每次遇到不连续的值时,将上一个连续序列的值和计数添加到结果列表中。最后,返回结果列表。在示例中,列表 ids
中有四个连续的1,两个连续的2,一个连续的3和四个连续的4。因此,计算结果为 [(1, 3), (2, 2), (3, 1), (4, 4)]
。