使用 JSON 函數需要匯入 json 函式庫:import json。
函數 描述
json.dumps 將Python 物件編碼成JSON 字串
json.loads 將已編碼的JSON 字串解碼為Python 物件
語法
json.dumps(obj, skipkeys=False, ensure_ascii=True, check_circular=True, allow_nan=True, cls=None, indent=None, separators=None , encoding="utf-8", default=None, sort_keys=False, **kw)
實例
以下實例將陣列編碼為JSON 格式資料:
#!/usr/bin/python import json data = {'number': 6, 'name': 'Pythontab'} jsonData = json.dumps(data) print jsonData
以上程式碼執行結果為:
{"number": 6, "name": "Pythontab"}
注意: 大家可能發現,執行上述轉換以後,資料並沒有發生變化,這裡要說一下: 在json中雙引號才是標註的字串分割符號,單引號不標準。
使用參數讓JSON 資料排序並格式化輸出:
#!/usr/bin/python import json data = {'number': 6, 'name': 'Pythontab'} jsonData = json.dumps(data, sort_keys=True, indent=4, separators=(',', ': ')) print jsonData
輸出結果
{ "name": "Pythontab", "number": 6 }
python 原始類型轉換到json 類型的對照表:
Python | JSON |
---|---|
#dict | object |
list, tuple | array |
#str, unicode | string |
int, long, float | number |
True | true |
None
null
json.loads
json.loads 用於解碼JSON 資料。此函數傳回 Python 欄位的資料類型。
#!/usr/bin/python import json jsonData = '{"number": 6, "name": "Pythontab"}' str = json.loads(jsonData) print str | 以上程式碼執行結果為:{u'number': 6, u'name': u'Pythontab'} | json 類型轉換到python 的型別對照表:
---|---|
object | |
#array | |
string |
以上是Python對JSON的解析詳解的詳細內容。更多資訊請關注PHP中文網其他相關文章!