encode和decode的区别_encoder和decoder

2022-11-08 22:37:32 浏览数 (1)

大家好,又见面了,我是你们的朋友全栈君。

从英文意思上看,encode和decode分别指编码和解码。在python中,Unicode类型是作为编码的基础类型,即:

decode encode str ———> str(Unicode) ———> str 1 2 >>> u = ‘中文’ # 指定字符串类型对象u

>>> str1 = u.encode(‘gb2312’) # 以gb2312编码对u进行编码,获得bytes类型对象 >>> print(str1) b’xd6xd0xcexc4′

>>> str2 = u.encode(‘gbk’) # 以gbk编码对u进行编码,获得bytes类型对象 >>> print(str2) b’xd6xd0xcexc4′ >>> str3 = u.encode(‘utf-8’) # 以utf-8编码对u进行编码,获得bytes类型对象 >>> print(str3) b’xe4xb8xadxe6x96x87′

>>> u1 = str1.decode(‘gb2312’) # 以gb2312编码对字符串str进行解码,获得字符串类型对象 >>> print(‘u1’) ‘中文’

>>> u2 = str1.decode(‘utf-8’) # 报错,因为str1是gb2312编码的 UnicodeDecodeError: ‘utf-8’ codec can’t decode byte 0xd6 in position 0: invalid continuation byte

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/184955.html原文链接:https://javaforall.cn

0 人点赞