python 编码

字符编码解释:

ASCII,8个bit,1个Byte

GB2312,2个Byte,7000多个汉字

GBK,2个Byte,21886个汉字,最常用,

GB18030,2个Byt,27484个汉字,

Unicode,,2个Byte

UTF8是Unicode的子集,可变长,其存储ASCII只占1个Byte,存储汉字时候占用3个Byte


 

python2.7默认使用ASCII

  想使用UTF-8在首行添加:# -- coding:utf-8 --

python3默认使用UTF-8


python3的文本(text)和二进制数据(byte)区分的很清楚,不能混用 不能拼接字符串和字节,也无法在字节包里搜索字符串

  文本用str来表示

  字符串可以编码成字节包,而字节包可以解码成字符串。

byte --decode--> string
string --encode--> byte

    示例
        >>> "售状".encode('utf-8')  //告诉编译器字符串的编码,默认使用utf-8
        b'xe5x94xaexe7x8axb6'
        
        >>> b'xe5x94xaexe7x8axb6'.decode('utf-8') //没有默认
        '售状'

python3网络传输都是二进制

原文地址:https://www.cnblogs.com/hinimix/p/7485348.html