国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > Python > 正文

python中解析json格式文件的方法示例

2020-02-16 01:29:01
字體:
來源:轉載
供稿:網友

前言

JSON(JavaScript Object Notation) 是一種輕量級的數據交換格式。它基于JavaScript(Standard ECMA-262 3rd Edition - December 1999)的一個子集。 JSON采用完全獨立于語言的文本格式,但是也使用了類似于C語言家族的習慣(包括C, C++, C#, Java, JavaScript, Perl, Python等)。這些特性使JSON成為理想的數據交換語言。易于人閱讀和編寫,同時也易于機器解析和生成。

本文主要介紹的是python中解析json格式文件的方法,解析json文件無非編碼和解碼,這里我們用了python下自帶的json模塊。當然還要結合python本身特有的dict類型的操作。下面來看看詳細的介紹吧。

編碼

編碼用到的是json.dumps()函數,將字典轉化為json對象。

import jsondata = [{'a':"A",'b':(2,4),'c':3.0}] #list對象print "DATA:",repr(data)data_string = json.dumps(data)#dumps函數print "JSON:",data_string

輸出的結果是:

DATA: [{'a':'A','c':3.0,'b':(2,4)}] #python的dict類型的數據是沒有順序存儲的JSON: [{"a":"A","c":3.0,"b":[2,4]}]

解碼

解碼用json.loads()函數,將json格式轉化為dict。

import jsondata = '{"a":"A","b":[2,4],"c":3.0}' #json格式decoded = json.loads(data)print "DECODED:",decoded

輸出的結果是

DECODED: [{u'a': u'A', u'c': 3.0, u'b': [2, 4]}]

編碼和解碼的過程中,元組會被變成無次序的列表,而字典的次序也并不能保證不變。

現在,處理json格式的重點便成了正確處理dict類型數據了。

常見錯誤

python的json模塊不支持單引號,所以類似"{'a':'A','b':[2,4],'c':3.0}"的字符串是會報以下錯誤的:

ValueError: Expecting property name: line 1 column 2 (char 1)

這時候我們只需要把他單雙引號互換即可:

'{"a":"A","b":[2,4],"c":3.0}'

總結

以上就是這篇文章的全部內容了,希望本文的內容對大家的學習或者工作能帶來一定的幫助,如果有疑問大家可以留言交流,謝謝大家對武林站長站的支持。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 彭泽县| 京山县| 绥芬河市| 木里| 苏州市| 宿迁市| 同江市| 开封市| 诏安县| 调兵山市| 朝阳县| 盐池县| 多伦县| 察隅县| 轮台县| 南雄市| 杭锦旗| 太原市| 漳浦县| 丹寨县| 普安县| 砚山县| 鲁山县| 阳原县| 富源县| 广州市| 静安区| 安西县| 资源县| 上杭县| 汉中市| 香河县| 荔波县| 乌什县| 沾化县| 齐河县| 栖霞市| 龙胜| 资兴市| 剑川县| 株洲县|