python 编码

Posted

tags:

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

字符编码解释:

ASCII,8个bit,1个Byte

GB2312,2个Byte,7000多个汉字

GBK,2个Byte,21886个汉字,最常用,

GB18030,2个Byt,27484个汉字,

Unicode,,2个Byte

UTF8是Unicode的子集,可变长,其存储ASCII只占1个Byte,存储汉字时候占用3个Byte


 

python2.7默认使用ASCII

  想使用UTF-8在首行添加:# -- coding:utf-8 --

python3默认使用UTF-8


python3的文本(text)和二进制数据(byte)区分的很清楚,不能混用 不能拼接字符串和字节,也无法在字节包里搜索字符串

  文本用str来表示

  字符串可以编码成字节包,而字节包可以解码成字符串。

byte --decode--> string
string --encode--> byte

    示例
        >>> "售状".encode(‘utf-8‘)  //告诉编译器字符串的编码,默认使用utf-8
        b‘\xe5\x94\xae\xe7\x8a\xb6‘
        
        >>> b‘\xe5\x94\xae\xe7\x8a\xb6‘.decode(‘utf-8‘) //没有默认
        ‘售状‘

python3网络传输都是二进制





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

使用非utf-8编码在Python中解析XML

从 XML 声明片段获取 XML 编码:部分内容解析不支持 XmlDeclaration

Python之如何优雅的重试

《安富莱嵌入式周报》第279期:强劲的代码片段搜索工具,卡内基梅隆大学安全可靠C编码标准,Nordic发布双频WiFi6 nRF7002芯片

常用python日期日志获取内容循环的代码片段

python 有用的Python代码片段