首頁 >後端開發 >Python教學 >分享一個用python遍歷字串(含漢字)的方法

分享一個用python遍歷字串(含漢字)的方法

Y2J
Y2J原創
2017-05-02 15:01:502052瀏覽

這篇文章主要介紹了python 遍歷字串(含漢字)實例詳解的相關資料,需要的朋友可以參考下

python 遍歷字串(含漢字)實例詳解

s = "中国china"
for j in s:
  print j

首先一個,你這個'a'是什麼編碼?可能不是你所想的gbk

>>> a='中国'
>>> a

這樣試試看,如果出來是6個字(word),表示是utf-8,如果是4個字,表示gbk。

另外,不管是utf-8還是gbk,都不能這樣遍歷,因為這裡它會一個字一個字拿出來。虛擬機器把a當成一個長度為len(a)的字串了。

接下來是遍歷問題。

Linux的shell大都預設是utf-8,所以一個中文字元是三個字,所以要三個三個地讀,你可以試試:

>>> a[:3]

出來就是個」中」字

windows的command的預設是cp936,也就是gbk,一個中文字元是兩個字,所以兩個字兩個字地讀(a[:2] )。

還有另一個遍歷的方法,把字串轉換成unicode,這樣中文英文都是一個字,就可以用你的for i in a的方法遍歷了。這個的好處是中文英文字都是一個字,而utf-8和gbk裡,英文字母只佔一個字。

s = u"中国china"
for j in s:
  print j

輸出如下:

中
国
c
h
i
n
a

以上是分享一個用python遍歷字串(含漢字)的方法的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn