先写一个字典并将其转换成JSON格式:
# encoding:utf-8
import json
dic = {'a': 1, 'b': 2, 'c': 3}
js = json.dumps(dic)
print(js)
打印出的是如下这个样子,一行式的:
{'a': 1, 'c': 3, 'b': 2}
1
看上去还可以接受吧,但是万一这JSON有一长串串串串串的话……可能编辑器都要hold不住了。
这个时候我们就可以对其进行格式化输出,json.dumps里就有自带的功能参数:
# encoding:utf-8
import json
dic = {'a': 1, 'b': 2, 'c': 3}
js = json.dumps(dic, sort_keys=True, indent=4, separators=(',', ':'))
print(js)
我们来对这几个参数进行下解释:
sort_keys:是否按照字典排序(a-z)输出,True代表是,False代表否。
indent=4:设置缩进格数,一般由于Linux的习惯,这里会设置为4。
separators:设置分隔符,在dic = {'a': 1, 'b': 2, 'c': 3}这行代码里可以看到冒号和逗号后面都带了个空格,这也是因为Python的默认格式也是如此,如果不想后面带有空格输出,那就可以设置成separators=(',', ':'),如果想保持原样,可以写成separators=(', ', ': ')。
解释好了,最后看下运行成果:
{
"a":1,
"c":3,
"b":2
}