Python字符編碼和轉碼

 

一:Python2python

  1. python2默認編碼格式是ascii碼,解釋器解釋代碼時會將代碼以及代碼中的字符串等轉換成ascii碼再執行。這樣會致使字符串輸出或傳輸時,與當前環境編碼格式不一樣的話會顯示亂碼。
  2. 咱們能夠經過 代碼文件開頭編碼聲明  改變編碼格式,告知解釋器 以什麼編碼格式 解釋文件內容,例如:在文件頭聲明瞭 #_*_coding:utf-8*_
  3. 在有#_*_coding:utf-8*_的狀況下,字符串變量若是寫成name=u"字符串"格式,那這個字符串就是unicode格式解釋和保存的;不加這個u就是utf-8格式

 

二:Python3編碼

  1. python3默認文件編碼格式就是utf-8,因此能夠直接在代碼中寫中文,不須要文件頭聲明編碼了。
  2. 字符串變量默認會被unicode格式解釋和存儲,不須要再顯式加 u 前綴。

 

三:轉碼code

  一個原則:全部字符集的轉換,都要先decode成爲unicode,再encode成爲其餘格式,不能直接轉其餘格式,不然會解析失敗成爲亂碼。utf-8

相關文章
相關標籤/搜索