作者windker (windker)
看板Python
標題[問題] 請問如何split中文?
時間Wed Dec 29 21:43:41 2010
想要的結果為 input="批踢踢實業坊" output=["批踢","踢踢","踢實","實業","業坊
"] (取Bigram)
如果是英文的話,因為有空格可用split()來作,但unicode變成
'\xa7\xe5\xbd\xf0\xbd\xf0\xb9\xea\xb7~\xa7{' 不知道該怎麼切。
想說如果可以切成["批","踢","踢","實","業","坊"],應該就可以得到output
我用的是python2.6
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 220.132.67.21
1F:→ uranusjr:直接 list('批踢踢實業坊') 就行了... 12/29 21:52
2F:→ uranusjr:啊不對這樣會變成半個字, 想錯了... 12/29 21:53
4F:→ windker:感謝回答 12/29 22:11
5F:推 grtfor:切中文盡量都轉成unicode處理,用正規表示法切時要特別小心 12/30 18:02
6F:→ apua:L=list(INPUT.decode('big5')) 12/30 22:00
7F:→ apua:OUTPUT=[(L[i]+L[i+1]).encode('utf8') for i in xrange( \ 12/30 22:01
8F:→ apua:len(L)-1)] 12/30 22:01
9F:→ gasolin:for i in list(u"批踢踢實業坊"): print i 01/07 13:38