我有一個列表如下,只由(-1)S和1S:如何計算連續複製Python列表
list1=[-1,-1,1,1,1,-1,1]
我想連續重複的次數追加到一個列表,例如:
count_dups=[2,3,1,1]
我試圖創建一個新的列表,並使用壓縮功能的第一步,但 似乎不能去,因爲截止最終值對
list2=list1[1:]
empty=[]
for x,y in zip(list1,list2):
if x==y:
empty.append(x)
else:
empty.append(0)
爲什麼你使用'zip'這裏?它似乎與任務無關。 – TigerhawkT3
我認爲你應該使用'itertools.groupby'來代替。 – ozgur
請參閱[此問題](http://stackoverflow.com/q/6352425)。它有一個傳統的實現和一個使用groupby。您應該能夠調整它們以滿足您的要求。 –