python之序列化json.dumps()函数输出json格式,使用indent参数对输出进行json字符串格式优化,使用ensure_ascii参数对中文输入的支持

json.dumps(a, indent=5, ensure_ascii=False)
ensure_ascii表示的意思是将python数据类型解析为json格式时是否需要转为ASCII码,如果打开(默认打开即为True),那么python数据类型转为json字符串后的中文会变成ASCII编码;
如果将其设置为False,则python数据类型解析为json时,不会变为ASCII编码,而是保持其默认显示即中文格式。

例如1:
import json

friends={"name":"王虎","name1":"张二","name2":"姚晨"}
print(json.dumps(friends))

执行结果:

输出的中文是中文的ascii 字符码,而不是真正的中文。
这是因为json.dumps 序列化时对中文默认使用的ascii编码。
因此需要使用ensure_ascii=False来指定不需要将中文转化为ascii码,而是保持其正常中文显示。

 例如2:

friends={"name":"王虎","name1":"张二","name2":"姚晨"}
print(json.dumps(friends,ensure_ascii=False)) 

执行结果:

 -------------------------------------------------------------------------------------------------------------------------------------------

 indent表示间隔的长度,使python数据类型在序列化的同时,保持json格式优化:

例如1:不加indent参数

 例如2:加indent参数

 

posted @   习久性成  阅读(859)  评论(0编辑  收藏  举报
编辑推荐:
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
阅读排行:
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
点击右上角即可分享
微信分享提示