β

Python编码转换

YUCOAT 243 阅读

这篇文章是介绍用Python将字符从各个编码之间来回转换,仅在Python2x下测试过。

Python的字符转码有两个重要的函数,一个是encode,一个是decode,encode是用来将UNICODE码转换层其他的编码,而decode是用来将其他编码的字符转换成UNICODE。

在Python控制台中,我们输入的‘中文’两个字符,敲回车,会得到以下输出

>>> '中文'
'\xd6\xd0\xce\xc4'

从输出的数字来看,这应该是gb2312编码,decode可以将其转换成Unicode编码:

>>> '中文'.decode('gb2312')
u'\u4e2d\u6587'

如果需要将gb2312编码转换成UTF-8或者其他的编码,可以先将gb2312转换成Unicode,然后再讲Unicode转换成UTF-8

>>> '中文'.decode('gb2312').encode('utf-8')
'\xe4\xb8\xad\xe6\x96\x87'

总之,将A码转换成B码的流程就是:

'YUCOAT.COM的Python转码'.decode('A码名称').encode('B码名称')
作者:YUCOAT
Love life & love potato
原文地址:Python编码转换, 感谢原作者分享。