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

相关文章
相关标签/搜索