python编码问题

Posted Dirge

tags:

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

Camp时在python2的编码上坑了不少。

理解pyhon2的编码

python2字符串类型只有两种:
str类型:bxxx也是str类型, 都是编码后的类型,len()按字节计算
unicode类型:len()按unicode字符计算
python2打开文件读取的字符串是str类型,无encoding参数 python2下读写文件建议使用 codecs 包 codecs.open, codecs.write可以指定编码

 

python3的编码

python3字符串类型分两种:
str类型:uxxx也是str类型,都是未编码的unicode
bytes类型:编码后的类型

python3打开文件有encoding参数, 可以按指定编码方式读入,读取为unicode类型字符串

 

Python 2 将 strings 处理为原生的 bytes 类型,而不是 unicode, 
Python 3 所有的 strings 均是 unicode 类型。

utf-8编码兼容ascii编码,asscii编码后的字符与utf-8编码后的字符结果相同





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

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

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

Python 向 Postman 请求代码片段

Python之如何优雅的重试

使用 Python 代码片段编写 LaTeX 文档

以下代码片段 C++ 的说明