剛開始學(xué)習(xí)Python的時(shí)候,一定要對(duì)基礎(chǔ)知識(shí)有一定的了解,比如字符編碼。你知道Python中常見的字符編碼有哪些嗎?讓我們來看看Python字符編碼的常見類型。
第一種:ASCII碼。它是一種基于拉丁字母的計(jì)算機(jī)編碼系統(tǒng)。它主要用于顯示現(xiàn)代英語和其他西歐語言。它是最常見的單字節(jié)編碼系統(tǒng),相當(dāng)于國際標(biāo)準(zhǔn)IS/IEC646。由于計(jì)算機(jī)是美國人發(fā)明的,計(jì)算機(jī)中最早編碼的字母只有127個(gè),即大小寫英文字母、數(shù)字和一些符號(hào)。這個(gè)編碼表稱為ASCII編碼。例如大寫字母A的編碼是65,小寫字母a的編碼是97,最后的128稱為擴(kuò)展ASCII碼。
第二種:GBK和GB2312。能夠在計(jì)算機(jī)中顯示漢字是非常重要的,但是ASCII表中沒有偏旁部首,所以我們需要一張中文和數(shù)字的對(duì)應(yīng)表。一個(gè)字節(jié)最多只能表示256個(gè)字符,可以用來處理中文。顯然一個(gè)字節(jié)是不夠的,所以我們需要用兩個(gè)字節(jié)來表示它,所以中國開發(fā)了GB2312代碼來寫中文。
第三種:Unicode。因?yàn)槊總€(gè)國家都有自己的一套代碼,沖突不可避免,于是Unicode誕生了。它可以將所有語言統(tǒng)一成一組編碼,這樣就不會(huì)出現(xiàn)亂碼問題?,F(xiàn)代操作系統(tǒng)和大多數(shù)編程語言都直接支持Unicode。
第四種:UFT-8?;诮?jīng)濟(jì)性原則,出現(xiàn)了將Unicode編碼轉(zhuǎn)換為變長編碼的UTF-8編碼。UTF-8編碼根據(jù)不同的數(shù)字大小將Unicode字符編碼為1-6個(gè)字節(jié)。常用的英文字母編碼為1個(gè)字節(jié),漢字通常為3個(gè)字節(jié)。只有非常稀有的字符才會(huì)被編碼成4-6個(gè)字節(jié),如果要傳輸?shù)奈谋景罅坑⑽淖址?,使用UTF-8編碼可以節(jié)省空間。