美文网首页
python的编解码(utf-8与gbk互转)

python的编解码(utf-8与gbk互转)

作者: bluenickle | 来源:发表于2017-07-19 23:26 被阅读0次

演示

python内部字符串统一是用unicode来存的,但是字符串在初始化的时候会因为操作系统环境而有差异

下面是在Linux环境下(UTF-8)初始化字符串

>>> d = '测试'
>>> d
'\xe6\xb5\x8b\xe8\xaf\x95'

转成unicode,可以看到变成了u开头的一堆字符,这个时候就可以转码了

>>> d = d.decode('utf-8')
>>> d
u'\u6d4b\u8bd5'

转成GBK编码

>>> d = d.encode('gbk')
>>> d
'\xb2\xe2\xca\xd4'

总结:

  • decode操作,把编码后的字符串转成未编码的unicode
  • encode操作,将unicode转成编码后的字符串

智能判断编码类型

>>> import chardet

>>> d = d.encode('utf-8')
>>> chardet.detect(d)
{'confidence': 0.7525, 'language': '', 'encoding': 'utf-8'}

相关文章

网友评论

      本文标题:python的编解码(utf-8与gbk互转)

      本文链接:https://www.haomeiwen.com/subject/pybrkxtx.html