Re: [問題] list處理連續出現字元

作者: bigpigbigpig (To littlepig with love)   2014-10-03 18:50:47
※ 引述《elmo56 (政大柯景騰)》之銘言:
: 大家好
: 我剛學PYTHON
: 有一個關於LIST的問題
: 我有一筆list,裡面只存在 a跟b
: 例如 [a,a,b,b,a,b,a,a]
: 我想要判斷a長度跟b長度
: 想法是這樣的
: for i in list:
: if list[i+1]=list[i]
: len2+=1
: 但我查了好多語法
: 找不到再python這邊的用法
Python 3 :
from itertools import groupby
L = ['a','a','b','b','a','b','a','a']
len_ab = [ len(list(g)) for k, g in groupby(L) ]
print(len_ab)
Ans : [2, 2, 1, 1, 2]
感想: Python 這一點比 C++ 方便,我以前用簡單的有限狀態機解決這類問題,
想不到 Python 一行搞定 :)
作者: liataian (T-PANY FOREVER)   2014-10-03 19:09:00
推, 原po應該就是想要找a或b每次出現的連續次數
作者: elmo56 (小樹芽)   2014-10-05 15:41:00
謝謝 我在題目表達不清 你仍願意解答

Links booklink

Contact Us: admin [ a t ] ucptt.com