Python 3.x 编解码

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python 3.x 编解码相关的知识,希望对你有一定的参考价值。

#-- coding:gbk -- 指定文件编码
#Author:lei
import sys
print(sys.getdefaultencoding())
s = "你好"
print(s)
print(s.encode("gbk")) #编码都会转成bytes类型
print(s.encode("utf-8"))
gbk_to_utf8 = s.encode("gbk").decode("gbk").encode("utf-8")
print(gbk_to_utf8)
#unicode 统一的万维码

--->unicode decode解码

---->gbk 或 gb2312 或 utf8 encode 编码

import sys
print(sys.getdefaultencoding())
s = "你哈"
print(s.encode("gbk"))
print(s.encode("utf-8"))
print(s.encode("utf-8").decode("utf-8").encode("gb2312").decode("gb2312"))
#decode("utf-8") 文件本身为utf-8格式 解码成unicode
#gb2312向下兼容 gbk
#python 3.x所有的编码成utf-8 gb2312 gbk 都成了byte类型文件,只有 decode 解码之后才成为字符串

以上是关于Python 3.x 编解码的主要内容,如果未能解决你的问题,请参考以下文章

编解码器无法在 Python 中解码字节 [重复]

Python JSON to CSV - 编码错误,UnicodeDecodeError:'charmap'编解码器无法解码字节

python3的base64编解码

Python/Flask:UnicodeDecodeError/UnicodeEncodeError:“ascii”编解码器无法解码/编码

python 2.x编解码

Python pandas to_excel'utf8'编解码器无法解码字节