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

Y2J
發布: 2017-05-02 15:01:50
原創
2014 人瀏覽過

這篇文章主要介紹了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中文網其他相關文章!

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板