欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

python gb2312编码问题

程序员文章站 2022-03-26 16:02:12
...

问题描述:

使用python进行gb2312编码,遇到如下问题

   if isinstance(q, str):
        q = q.decode("utf8")
   t = q.encode("gb2312")

UnicodeEncodeError: 'gb2312' codec can't encode character u'\u5225' in position 0: illegal multibyte sequence

其中编码错误的汉字是: 别克

经过阅读这篇文章GBK与GB2312的些许不同 使用gbk进行编码,问题就解决。

import urllib
a = u"別克"
c = a.encode("gbk")

再次遇到问题:

UnicodeEncodeError: 'gbk' codec can't encode character u'\u2006' in position 1: illegal multibyte sequence

这次编码错误的字是:g l 8

解决方法(参考python下字符编码和解码问题):

//替换
a = u'g l 8'
a = a.replace(u'\u2006', '')
c = a.encode("gbk")

//加ignore参数
c = a.encode("gbk", 'ignore')

转载于:https://www.jianshu.com/p/ae1371686221