python 判斷是否為中文

知其然,知其所以然。發表於2018-12-11

python在執行程式碼過程是不知道這個字元是什麼意思的、是否是中文,而是把所有程式碼翻譯成二進位制也就是000111這種形式,機器可以看懂的語言。

也就是在計算機中所有的字元都是有數字來表示的。漢字也是有數字表示的,Unicdoe4E00~9FFF表示中文,所以如果一個字元的utf-8編碼在這個區間內,就說明它是中文。

中文編碼對應表

 

GBK   UTF16   UTF8    漢字

D2BB  4E00  E4 B8 80  一
B6A1  4E01  E4 B8 81  丁
C6DF  4E03  E4 B8 83  七
CDF2  4E07  E4 B8 87  萬

.

.

.

EDE8  9F9B  E9 BE 9B  龕
B9EA  9F9F  E9 BE 9F  龜
D9DF  9FA0  E9 BE A0  龠

 

python判斷中文的方式:

(1)

def is_Chinese(ch):
    if '\u4e00' <= ch <= '\u9fff':
            return True
    return False

(2)

def is_chinese(ch):
    if ch <  '一' or ch > '龥':
        return False
    return True

  

 

相關文章