[英]Count consecutive elements in a list
我正在做一個小程序,計算一個字符出現在列表中的次數,我有一個問題,¿可以通過連續數字來做嗎? 我現在有這個代碼:
def function(list):
final_list = []
for element in set(list):
final_list.append([element, list.count(element)])
return final_list
對於更簡單的解決方案,您可以使用itertools.groupby
:
from itertools import groupby
l = [1, 1, 1, 2, 2, 3, 4, 4, 1, 1, 1]
[[k,len(list(v))] for k,v in groupby(l)]
# [[1, 3], [2, 2], [3, 1], [4, 2], [1, 3]]
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.