利用Python處理json文件

本文首發(fā)于我的個人博客Suixin's Blog
原文: https://suixinblog.cn/2019/02/python-json.html  作者: Suixin

JSON(JavaScript Object Notation)是一種輕量級的數(shù)據(jù)交換格式,盡管JSON是JavaScript的一個子集,但它是獨立于語言的文本格式。
在Python中,我們使用json包來實現(xiàn)json文件的讀取和寫入。

讀取json文件

使用json.loads()json.load()兩個函數(shù)來讀取json文件。

json.loads()

json.loads()用來解析包含JSON數(shù)據(jù)的字符串,解析后變量格式為字典。
用法:

image

json.load()

json.load()用來解析json文件,這也是和json.loads()唯一的區(qū)別。
解析json文件時,要么該文件只包含一行(只有一個字典),要么每個字典是列表的一個元素,如圖:

image

如果是后一種,則解析出的變量也為列表格式,每個元素是對應(yīng)的字典。

編碼為json格式

使用json.dumps()json.dump()兩個函數(shù)來編碼json格式。

json.dumps()

json.dumps()將一個Python數(shù)據(jù)結(jié)構(gòu)(字典)編碼成json格式的字符串。
用法:

image

json.dump()

json.dump()將一個Python數(shù)據(jù)結(jié)構(gòu)(字典)編碼成json格式,并寫入到文件中。
用法:

image

jj.json文件為:
image

共有參數(shù)

  • ensure_ascii=True:如果有中文時,需改為False,即不轉(zhuǎn)義為ASCII碼;
  • indent=None:縮進。默認為緊湊格式,0/負數(shù)或者""為只換行,正數(shù)代表縮進多少個空格,也可以使用"\t"等;
  • sort_keys=False:是否按照鍵排序;
  • separators=None:分隔符。默認為None(即(", ", ": ")),可以改為緊湊形式(",", ":")等。

參考

https://docs.python.org/3/library/json.html

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容