字符编码解释:
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网络传输都是二进制