centos - 如何在特定位置将字符解码为utf-8

标签 centos python character-encoding

我有一个 python 脚本,其中有一本字典。出于某种原因,我需要将字典转换为 json。 但是,无论何时执行脚本,都会出现以下错误

UnicodeDecodeError:“utf8”编解码器无法解码位置 604 中的字节 0xe9:无效的连续字节

对于 json.dumps(data_dict) 行。

来自 link ,我知道应该解码非 utf 字符。但是如何在脚本中做到这一点?我们如何从字典中获取该位置的字符并对其进行解码。

在解释器上,它有效。以下是解释器片段。

>>'ren'.decode('utf-8')

>>你是\ufffd'

最佳答案

您正在尝试解码无效的 UTF-8 代码点。无法解码非 UTF-8 字符。如果您绝对必须处理无效代码点,请尝试将 'ignore' 传递给 .decode,或者尝试 chardet library检测实际编码(.decode 将编码为 Unicode)。

关于centos - 如何在特定位置将字符解码为utf-8,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38646459/

相关文章:

linux - 如何在没有网络的情况下在CentOS 6.3上升级开发者工具?

nginx - 在 CentOS 7 上使用 php7 和 nginx 安装 Typo3

python - 如何在从智能手机接收蓝牙数据的同时使用键盘移动 Pygame 的多边形?

python - 在 Python 中检查字符串是大写、小写还是混合大小写

java - charset 和 rome 问题(rss/atom feeds)

linux - 配置 promtail 2.0 以读取文件 .log

apache - Centos httpd apache http服务器启动失败

python - numpy.array() 等同于 numpy.stack(..., axis=0) 吗?

character-encoding - Axios 的编码问题

重音字符的javascript编码问题