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