Python进行JSON格式化输出

2023-01-31 01:01:20 python 输出 格式化

先写一个字典并将其转换成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}

看上去还可以接受吧,但是万一这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
}

是不是棒棒的~

相关文章