JSON檔案以及Python對JSON檔案的讀寫
阿新 • • 發佈:2018-12-13
一,什麼是JSON檔案
JSON和XML都是網際網路上資料交換的主要載體。
在JSON出現之前,大家一直用XML來傳遞資料。因為XML是一種純文字格式,所以它適合在網路上交換資料。XML本身不算複雜,但是,加上DTD、XSD、XPath、XSLT等一大堆複雜的規範以後,任何正常的軟體開發人員碰到XML都會感覺頭大了,最後大家發現,即使你努力鑽研幾個月,也未必搞得清楚XML的規範。於是,道格拉斯·克羅克福特(Douglas Crockford)發明了JSON這種超輕量級的資料交換語言,由於JSON非常簡單,它很快就風靡Web世界,並且成為ECMA標準,幾乎所有程式語言都有解析JSON的庫。
JSON(JavaScript Object Notation)是基於ECMAScript(歐洲計算機協會制定的js規範)的一個子集,採用獨立於程式語言的文字格式來儲存和表示資料。簡潔和清晰的層次結構使得JSON成為理想的資料交換語言。易於人閱讀和編寫,同時也易於機器解析和生成,並有效提升網路傳輸效率。JavaScrip物件和JSON之間可以非常方便地轉化。JavaScript內建了JSON的解析,因此在JS中可以直接使用JSON;而把任何JavaScript物件程式設計JSON,就是把這個物件序列化成一個JSON格式的字串,這樣就能夠通過網路傳遞給其他計算機。
二,Python讀取JSON檔案
仔細觀察JSON的格式不難發現,它其實就是Python中的字典。因此,Python對JSON的讀取非常簡單,一個JSON檔案經過json.load()以後,就變成了Python中的字典。
import json filename='data\github_python_stars.json' with open(filename,'r',encoding='utf-8') as file: data=json.load(file) #<class 'dict'>,JSON檔案讀入到記憶體以後,就是一個Python中的字典。 # 字典是支援巢狀的, print(type(data))
三,Python寫入JSON檔案
同樣的,JSON中的字典通過json.dump(),就可以把字典寫入到JSON檔案中:
import json
mydict={'name':'leon','age':'30','email':'[email protected]'}
file='test.json'
with open(file,'w',encoding='utf-8') as f:
json.dump(mydict,f)
print("載入入檔案完成...")