無論是py2還是py3,都使用unicode作為記憶體編碼,簡稱內碼
儲存在python直譯器記憶體中的文字,輸出到螢幕、編輯器,或者儲存成檔案的時候,都要將內碼轉換成utf8或者gbk等編碼格式
同樣,python直譯器從輸入裝置接收文字,或者從檔案讀取文字的時候,都要將utf8或者gbk等編碼轉換成unicode編碼格式
///py2的字串有兩種型別:unicode型別和str型別
py2的unicode型別就是unicode編碼
py2的str型別泛指除unicode編碼之外的所有編碼,包括ascii編碼、utf8編碼、gbk編碼、cp936編碼等
py3的字串也有兩種型別:bytes型別和str型別
py3的str型別就是unicode編碼
py3的bytes型別泛指除unicode編碼之外的所有編碼,包括ascii編碼、utf8編碼、gbk編碼、cp936編碼等
你會發現同樣是str型別,在py2和py3中完全顛倒了
///encode:解碼
decode:編碼
s="我愛你abc"
可以使用type
(s)檢視編碼型別
通過使用encode和decode來轉換編碼
decode
('utf8'
):從utf8或者gbk轉變為unicode
encode
('utf8'
):將unicode轉化為utf8編碼
encode
('gbk'
):將unicode轉化為gbk編碼
不同編碼的輸出結果不同
字串長度也不同
Python編碼知識
編碼是資訊從一種形式或格式轉換為另一種形式的過程也稱為計算機程式語言的 簡稱編碼。用預先規定的方法將文字 數字或其它物件編成數碼,或將資訊 資料轉換成規定的電脈衝訊號。a.ascii 8位 目前計算機中用得最廣泛的字符集及其編碼,是由美國國家標準局 ansi 制定的ascii碼。適用於所有拉丁文本字...
python編碼知識點(倒序更新)
decode 和encode 區別 在python中進行編碼轉換都是通過unicode作為中間值實現的。decode的作用是將其他編碼的字串轉換成unicode編碼,如str1.decode gb2312 表示將gb2312編碼的字串轉換成unicode編碼。encode的作用是將unicode編碼...
編碼知識整理
可能很多人事先沒有了解好相關的編碼知識,就把unicode編碼和utf 8編碼混為一談相互比較,認為是兩種不同的編碼,其實不然,unicoe編碼只是乙個字符集,規定了字元和二進位制 的對應關係,好比是乙個大字典,但是對於如何編碼儲存在計算機及其具體實現,unicode編碼並沒有做規定,而utf 8編...