随便写写:
python3中统一是用UTF-8编码的所以一般已经不会出现编码问题了因为编码如下图转化,gbk与utf-8不能直接转换
在python3中utf-8编码:
utf-8:一个字节符1~3个字节(英文字母占一个字节,欧洲的一些字符占2个字节,中文一个字符占3字节)
gbk:一个英文字符占2个字节,一个中文字符占2个字节。
所以Unicode所占的字节数很多,不适用于存储和传输。
对了还有一种bytes表现形式。
来来来上代码:
b1 = s.encode('utf-8')
print(b1)
b2 = s.encode('gbk')
print(b2)
s2 = '啊啊啊啊'
b3 = s2.encode('utf-8')
print(b3) # 16进制
结果:
b'Q'
b'Q'
b'\xe5\x95\x8a\xe5\x95\x8a\xe5\x95\x8a\xe5\x95\x8a'
当是中文的时候bytes表达形式就是\xxx 是16进制这就是一个字节