簡體   English   中英

連續計算出現次數

[英]Counting number of occurrences in a row

如果a具有n個布爾值的列表,那么查找列表中連續出現一次,兩次連續出現等等的真實次數的最佳方法是什么?

例如:list1 = [True,False,True,True,False,False,False,True,True]

true連續出現一次,連續兩次出現兩次。

您可以使用itertools.groupby查找Truescollections.Counter連續出現。

讓我們嘗試以下列表:

from itertools import groupby
from collections import Counter

l = [True, False, True, True, True, True, False, True]
Counter(sum(v) for k,v in groupby(l) if k)
# Counter({1: 2, 4: 1})

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM