信息來自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進行排序后輸出。