[python]UnicodeEncodeError: 'gbk' codec can't encode character '\ufffd'

时间:2023-03-09 01:06:46
[python]UnicodeEncodeError: 'gbk' codec can't encode character '\ufffd'

有关编码问题,一直以来都是十分头疼的问题。代码中的字符编码其实还好,但是由于使用的window系统,会用Window的默认编码去解析文本。

今天用脚本在写文件的时候,就总是弹出UnicodeEncodeError: 'gbk' codec can't encode character '\ufffd'的编码问题。

python内部的编码是没问题的,问题就是系统编码GBK不识别\ufffd这个字符。

尝试去掉这个\ufffd符号花费了不少功夫。

最后采用的方案是,最后通过replace选项将危险字符转为了?。

str(tmp).encode('gbk', 'replace').decode('utf8')

可以将不识别的编码转变为?字符。