Python進行JSON格式化輸出
阿新 • • 發佈:2019-01-31
先寫一個字典並將其轉換成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
}
是不是棒棒的~