中文数据写入JSON文件显示Unicode编码的原因及解决方法求助
为什么JSON文件里的中文显示成Unicode编码?
Python的json模块默认会把所有非ASCII字符(比如中文)转换成Unicode转义序列(就是你看到的\uXXXX格式)。这其实是符合JSON规范的,绝大多数JSON解析工具都能正常识别解析,但确实不够直观,不方便我们直接阅读内容。
如何让JSON文件直接显示中文字符?
只需要在调用json.dump()时添加ensure_ascii=False参数,同时保持文件打开时的encoding="utf8"设置,就能直接写入中文了。修改后的代码如下:
import json # 示例数据 edits = [{"sentence": "她笑着对我说:“我借你一根筷子。”"}] with open("file_name.json", "w", encoding="utf8") as file: json.dump(edits, file, ensure_ascii=False)
这样生成的JSON文件就会直接显示中文,而不是Unicode转义序列啦。另外要注意,如果省略encoding="utf8"参数,在部分系统环境下可能会出现中文乱码的问题,所以建议同时保留这个编码设置。
内容的提问来源于stack exchange,提问作者VJAYSLN
相关产品推荐
相关产品推荐

