json.dumps参数之解

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了json.dumps参数之解相关的知识,希望对你有一定的参考价值。

参考技术A 通过help(“json”) 可以参考json库使用说明

编码后的json格式字符串紧凑输出,且无顺序,其dumps方法提供一些可选的参数,让输出的格式提高可读性。
(1)sort_keys是告诉编码器按照字典key排序(a到z)输出。

(2)indent参数根据数据格式缩进显示,读起来更加清晰, indent的值,代表缩进空格式:

(3)separators参数的作用是去掉‘,’ ‘:’后面的空格,在传输数据的过程中,越精简越好,冗余的东西全部去掉。

(4)skipkeys参数,在encoding过程中,dict对象的key只可以是string对象,如果是其他类型,那么在编码过程中就会抛出ValueError的异常。skipkeys可以跳过那些非string对象当作key的处理.

(5)输出真正的中文需要指定ensure_ascii=False

如果无任何配置,或者说使用默认配置,
输出的会是‘凉凉’的ASCII字符吗,而不是真正的中文。
这是因为json.dumps 序列化时对中文默认使用的ascii编码。

python json.dumps()函数输出json格式,使用indent参数对json数据格式化输出

最近使用json.dumps()来输出json数据,发现输出的数据是一行,看着太别扭了,不美观。发现可以使用indent参数来控制

import json

dicts={"name":"lucy","sex":"boy"}

json_dicts=json.dumps(dicts)
print(json_dicts)

结果如下:

用indent参数后的效果

import json

dicts={"name":"lucy","sex":"boy"}

json_dicts=json.dumps(dicts,indent=4)
print(json_dicts)

结果如下:

以上是关于json.dumps参数之解的主要内容,如果未能解决你的问题,请参考以下文章

python json.dumps()函数输出json格式,使用indent参数对json数据格式化输出

[转]python json.dumps 中的ensure_ascii 参数引起的中文编码

python json.dumps 中的ensure_ascii 参数引起的中文编码问题

python json.dumps 中的ensure_ascii 参数引起的中文编码问题

json.dump里面参数的使用及应用,json.dumps(a, indent=5, ensure_ascii=False)

Python中json.dump()和json.dumps()的区别