导语:
本文主要介绍了关于python编码和解码区别是什么?的相关知识,希望可以帮到处于编程学习途中的小伙伴
python中的编码与解码的区别:
Encoding/encode:将Unicode字符串转换为特定编码格式对应的字节码的过程
解码/解码:将特定编码格式的字节码转换成对应的Unicode字符串的过程
示例:
In [43]: '美丽人生'.encode('gbk')
Out[43]: b'\xc3\xc0\xc0\xf6\xc8\xcb\xc9\xfa'
In [44]: b'\xc3\xc0\xc0\xf6\xc8\xcb\xc9\xfa'.decode('gbk')
Out[44]: '美丽人生'
In [45]: '美丽人生'.encode('utf-8')
Out[45]: b'\xe7\xbe\x8e\xe4\xb8\xbd\xe4\xba\xba\xe7\x94\x9f'
In [46]: b'\xe7\xbe\x8e\xe4\xb8\xbd\xe4\xba\xba\xe7\x94\x9f'.decode('utf-8')
Out[46]: '美丽人生'
In [47]: b'\xc3\xc0\xc0\xf6\xc8\xcb\xc9\xfa'.decode('gbk').encode('utf-8')
Out[47]: b'\xe7\xbe\x8e\xe4\xb8\xbd\xe4\xba\xba\xe7\x94\x9f'
上面以 b 开头的类型是字节码,斜杠是字节。可以看出,一个普通汉字在GBK格式编码后占用2个字节,在UTF-8格式编码后占用3个字节。因为UTF-8编码也用于存储或传输,一个汉字占用的空间是3个字节。
字符串长度和字节码长度:
In [61]: len('美丽人生')
Out[61]: 4
In [62]: len(b'\xe7\xbe\x8e\xe4\xb8\xbd\xe4\xba\xba\xe7\x94\x9f')
Out[62]: 12
本文为原创文章,版权归知行编程网所有,欢迎分享本文,转载请保留出处!
你可能也喜欢
- ♥ json和python字典的区别10/23
- ♥ Python中xlrd读取的错误处理09/28
- ♥ Python3条件控制01/02
- ♥ 如何结合语句使用python range()01/05
- ♥ python中的SocketServer是什么?10/18
- ♥ Python IDE Thonny 简介09/28
内容反馈