信息来自python说明文档(https://docs.python.org/3/library/json.html)
函数功能
输出一个python对象到文件
函数声明
json.dump(obj, fp, *,
skipkeys=False,
ensure_ascii=True,
check_circular=True,
allow_nan=True,
cls=None,
indent=None,
separators=None,
default=None,
sort_keys=False,
**kw)
参数说明
加粗部分的参数是比较常用的
- obj
待输出的对象,常见的是string、list、dict - fp
输出到的文件句柄,如fp = open('path', 'w') - skipkeys
默认为false,false时,dict的key字段,必须是基础类型(str, int, float, bool, None),否则将报异常TypeError。如果设置为True,对于非基础类型的key,将跳过,而不是报异常。 - ensure_ascii
默认为True,此时中文会输出为ascii码,如果想输出真正的中文,需要指定ensure_ascii=False - check_circular
默认为True,如果该参数被设置为False,则容器类型的数据结构循环引用检查将被忽略,这样可能引发溢出错误。建议不修改 - allow_nan
默认为True。如果为False,则为'ValueError'在中序列化超出范围的'float'值('nan','inf','-inf')严格遵守JSON规范,而不是使用JavaScript等价物('NaN','Infinity','-Infinity' - cls
当使用默认JSON格式类型时,该参数没有用处,只有重写default参数中的方法时,cls可以作为参数传入,这个过程不常用 - indent
缩进,默认None时无缩进,不换行。=0时,无缩进,有换行。>0时,有缩进,有换行。 - separators
默认为元组(item分隔符, key分隔符),即(',', ': ')。如果separators=(',',':')后,则:后不会跟空格 - default
- sort_keys
默认为False,不操作。设置为True时,会对keys进行排序后输出。