encode和decode

Posted

tags:

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

编码格式主要有:Unicode、utf-8、gbk、utf-16等
unicode是utf-8、gbk等的父编码,所有子编码都可以转换成Unicode编码。然后转换成其他子编码。但是子编码之间是不可以进行转换的。(比如utf-8可以先转换成Unicode,然后再从Unicode转换成gbk;但是不能直接从utf-8转换成gbk)
技术分享
一、编码、解码
python中用encode和decode来进行编码和解码:
encode:将Unicode的编码转换成其他格式的编码
如str1.encode(‘gbk‘),表示将unicode编码的字符串转换成gbk 编码。 
 
decode:将其他格式的编码转换成Unicode的编码格式
str2.decode(‘gbk ‘),表示将gbk 编码的字符串转换成unicode编码。 
 
二、判断字符串的的编码格式
通过repr函数来查看变量给python看的形式,不同的编码格式,存储中文的结果不同,比如下面的例子。
 
“测试test”,使用不同的编码格式的结果如下:
unicode:‘u6d4bu8bd5test‘
unicode一般是u开头,后边跟4位的数字或字母,1个u对应一个汉字
utf-8:‘xe6xb5x8bxe8xafx95test‘
utf-8一般是x开头,后面跟两位字母或数字,3个x代表一个汉字
gbk:‘xb2xe2xcaxd4test‘
gbk也是x开头,后面跟两位字母或数字,2个x代表一个汉字
 
三、其他注意点
1.python3默认编码改成了unicode,基本上不存在编码问题
技术分享

以上是关于encode和decode的主要内容,如果未能解决你的问题,请参考以下文章

ffmpeg decode, encode, transcode, mux, demux, stream, filter的区别

perl 递归的删除目录和目录中的文件

perl 在windows上获取当前桌面壁纸

遍历文件,读取.wxss文件,在头部添加一条注释

如何在 Perl 中将命令行参数视为 UTF-8?

C# Text.Encoder 和 Text.Encoding 有啥区别