保存json保持缩进

python

import json
def dump_json(obj, fp, encoding='utf-8', indent=4, ensure_ascii=False):
    with open(fp, 'w', encoding=encoding) as fout:
        json.dump(obj, fout, indent=indent, ensure_ascii=ensure_ascii)


def load_json(fp, encoding='utf-8'):
    with open(fp, encoding=encoding) as fin:
        return json.load(fin)

JS: JSON.stringify() 将 JavaScript 对象转换为字符串

JSON.stringify(value[, replacer[, space]])
//第2个参数
JSON.stringify({name: 'wws', age: 28})
JSON.stringify({name: 'wws', age: 28}, null)
// "{"name":"wws","age":28}"

JSON.stringify({name: 'wws', age: 28}, ['age'])
// "{"age":28}"

JSON.stringify({name: 'wws', age: 28}, (key, value) => {
	if (key === 'age') return undefined
	return value
})
// "{"name":"wws"}"

//第3个参数
JSON.stringify({name: 'wws', age: 28}, null)
JSON.stringify({name: 'wws', age: 28}, null, null)
// "{"name":"wws","age":28}"
//是数字,则代表缩进多少个空格,最大为10,小于1则没有空格
JSON.stringify({name: 'wws', age: 28}, null, -1)
// "{"name":"wws","age":28}"
JSON.stringify({name: 'wws', age: 28}, null, 4)
/*
	"{
	    "name": "wws",
	     "age": 28
	}"
*/

//是字符串,则作为缩进使用
JSON.stringify({name: 'wws', age: 28}, null, "^-^")

/*
	'{\n^-^"name": "wws",\n^-^"age": 28\n}'
*/

参数说明:

value:
必需, 要转换的 JavaScript 值(通常为对象或数组)。

replacer:
作用:用于过滤、格式化
space:
可选,文本添加缩进、空格和换行符,如果 space 是一个数字,则返回值文本在每个级别缩进指定数目的空格,如果 space 大于 10,则文本缩进 10 个空格。space 也可以使用非数字,如:\t。


版权声明:本文为weixin_40959890原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。