python中json序列化时汉字变成编码的解决方式
Posted 被嫌弃的胖子
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python中json序列化时汉字变成编码的解决方式相关的知识,希望对你有一定的参考价值。
我们在使用json模块时,如果被序列化对象中不包含汉字,当然没有任何问题,但是有汉字会被编译成unicode码:
import json dic = {"name":"小明","age":"18","sex":"男"} js_dic = json.dumps(dic) print(js_dic) #打印结果 #{"name": "u5c0fu660e", "age": "18", "sex": "u7537"}
我们想要解决这个问题就在序列化的时候加一个“ensure_ascii=False”就行
import json dic = {"name":"小明","age":"18","sex":"男"} js_dic = json.dumps(dic,ensure_ascii=False) *** print(js_dic) #打印结果 #{"name": "小明", "age": "18", "sex": "男"}
另外我们想序列化的结果更加格式化可以加一个indent
import json dic = {"name":"小明","age":"18","sex":"男"} js_dic = json.dumps(dic,ensure_ascii=False,indent=2) #数字代表的是"name"剧左边的空格数 print(js_dic) { "name": "小明", "age": "18", "sex": "男" }
以上是关于python中json序列化时汉字变成编码的解决方式的主要内容,如果未能解决你的问题,请参考以下文章
micropython中怎么将gb2312编码的字节流变成中文
python3 中的Json序列化反序列化 和 字符编码的问题解决