python 遍歷字串 含漢字 例項詳解

2022-09-27 06:48:12 字數 735 閱讀 5426

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,www.cppcns.com所以乙個中文字元是三個字,所以要三個三個地讀,你可以試下:

>>> a[:3]

出來就是個」中」字www.cppcns.com

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

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

s = u程式設計客棧"中國china"

for j in s:

print j

輸出如下:

中國chi

na本文標題: python 遍歷字串(含漢字)例項詳解

本文位址:

python逐個遍歷字串 含漢字

s 中國china for j in s print j首先乙個,你這個 a 是什麼編碼?可能不是你所想的gbk a 中國 a這樣試試看,如果出來是6個字 word 說明是utf 8,如果是4個字,說明gbk。另外,不管是utf 8還是gbk,都不能這樣遍歷,因為這裡它會乙個字乙個字拿出來。虛擬機器...

Python字串 遍歷

很多計算過程都需要每次從乙個字串中取乙個字元。一般都是從頭開始讀取,依次得到每個字元,然後做些處理,一直到末尾。這種處理模式叫遍歷。1.使用while迴圈寫乙個遍歷 cat a.py bin python fruit banana index 0 while index len fruit pyth...

python字串只保留漢字

defis chinese uchar 判斷乙個 unicode 是否是漢字 ifuchar u u4e00 anduchar u u9fa5 returntrue else returnfalse defis number uchar 判斷乙個 unicode 是否是數字 ifuchar u u0...