coding

Origin of code:

1.为了处理英文字符,产生了ASCII码。 
2.为了处理中文字符,产生了GB2312。 
3.为了处理各国字符,产生了Unicode。 
4.为了提高Unicode存储和传输性能,产生了UTF-8,它是Unicode的一种实现形式

The encoding problem of python2 and python3:

1.Python2中默认的字符编码是ASCII码。 
2.Python2中字符串有str和unicode两种类型。str有各种编码的区别,unicode是没有编码的标准形式。 
3.Python2中可以直接查看到unicode的字节串。
4.字节串是指该字符串在python中的标准形式, 字节串是没有编码的


python2如果不声明的话,默认只处理英文,也就是ASCll编码,
所以每一个有ASCll之外的字符的话,都需要在脚本的头部声明 #  _*_ utf-8 _*_

coding:

decode()方法将其他编码字符转化为Unicode编码字符 

decoding:

encode()方法将Unicode编码字符转化为其他编码字符


chardet模块可以检测字符串编码,没有该模块的可以用pip install chardet安装。

The default encoding of win and linux:

1.Python2的对于字符编码的转换要以unicode作为“中间人”进行转化。
2.知道自己系统的字符编码(Linux默认utf-8,Windows默认GB2312),对症下药。



Guess you like

Origin http://43.154.161.224:23101/article/api/json?id=325471686&siteId=291194637