官术网_书友最值得收藏!

  • Linux集群之美
  • 余洪春
  • 387字
  • 2021-01-08 10:57:48

2.5.4 使用Python解析JSON

JSON(JavaScript Object Notation)是一種輕量級的數(shù)據(jù)交換格式,易于人閱讀和編寫。前面已介紹過,它是開發(fā)工作中用得最多的一種數(shù)據(jù)文件格式。本節(jié)為大家介紹如何使用Python語言來編碼和解碼JSON對象。

表2-6 JSON模塊各函數(shù)的作用

首先導(dǎo)入JSON模塊,命令如下:


import json

其具體函數(shù)的作用如表2-6所示。

json.dumps用于將Python對象編碼成JSON字符串,下面舉個(gè)簡單的例子說明下:


#!/usr/bin/python
import json
data = [ { 'a' : 1, 'b' : 2, 'c' : 3, 'd' : 4, 'e' : 5 } ]
j = json.dumps(data,indent=4)
print j

如果沒有indent=4這樣的參數(shù),輸出格式一般都不優(yōu)美。當(dāng)數(shù)據(jù)很多的時(shí)候,就不是很直觀,所以用indent參數(shù)來對JSON進(jìn)行數(shù)據(jù)格式化輸出。輸出結(jié)果如下:

表2-7 Python類型向JSON類型轉(zhuǎn)化的對照表


[
    {
        "a": 1, 
        "c": 3, 
        "b": 2, 
        "e": 5, 
        "d": 4
    }
]

Python類型向JSON類型轉(zhuǎn)化的對照表見表2-7。

json.loads用于將JSON對象解碼成Python對象,這里還是舉一個(gè)簡單的例子,代碼如下:


#!/usr/bin/python
import json
data = '{"a":1,"b":2,"c":3,"d":4,"e":5}';
text = json.loads(data)
print text

輸出結(jié)果如下:


{u'a': 1, u'c': 3, u'b': 2, u'e': 5, u'd': 4}

JSON類型向Python類型轉(zhuǎn)化的對照表見表2-8。

表2-8 JSON類型向Python類型轉(zhuǎn)化的對照表

主站蜘蛛池模板: 讷河市| 乳山市| 武冈市| 措勤县| 孝昌县| 遂川县| 汝州市| 尼木县| 汶上县| 阿克苏市| 周宁县| 页游| 黄骅市| 江都市| 黄大仙区| 施甸县| 阳城县| 陇川县| 河曲县| 夹江县| 溆浦县| 泰来县| 白水县| 沙雅县| 文安县| 峨眉山市| 芷江| 怀柔区| 霍林郭勒市| 江门市| 西华县| 颍上县| 武川县| 盖州市| 东源县| 上高县| 文成县| 潼关县| 玉田县| 寿光市| 成都市|