本文實例講述了Python中json格式資料的編碼與解碼方法。分享給大家供大家參考,具體如下:
python從2.6版本開始內建了json資料格式的處理方法。
1、json格式資料編碼
在python中,json資料格式編碼使用json.dumps方法。
#!/usr/bin/env python #coding=utf8 import json users = [{'name': 'tom', 'age': 22}, {'name': 'anny', 'age': 18}] #元组对象也可以 #users = ({'name': 'tom', 'age': 22}, {'name': 'anny', 'age': 18}) #输出[{"age": 22, "name": "tom"}, {"age": 18, "name": "anny"}] print json.dumps(users)
其中users可以是元組對象,也可以是列表對象。物件內的元素可以是數字、字串、元組、列表、None、布林值。
#!/usr/bin/env python #coding=utf8 import json random = (5, [1, 2], "tom\" is good", (1, 2), 1.5, True, None) #输出[5, [1, 2], "tom\" is good", [1, 2], 1.5, true, null] print json.dumps(random)
2、json格式資料解碼
#在python中json格式資料解碼使用json.loads方法,把上面的例子搬來用:
#!/usr/bin/env python #coding=utf8 import json random = (5, [1, 2], "tom\" is good", (1, 2), 1.5, True, None) jsonObj = json.dumps(random) #输出[5, [1, 2], u'tom" is good', [1, 2], 1.5, True, None] print json.loads(jsonObj)
這裡就是先對一個資料json編碼,然後再編碼後的資料解碼。照理說,解碼後的資料應當和原先的資料一樣,但是我們發現這裡元組物件都被替換成列表物件了。這邊就牽涉到python和json互相轉換的資料格式定義了。看下面兩個圖:
python轉成json資料格式定義
json轉成python資料格式定義
從上面兩張圖可以看出python轉換成json的時候,list、tuple都會轉成array,而json轉成python的時候,array就只轉成list了。
備註:上面兩張圖的內容皆來自python官方網站。 json的dumps方法和loads方法也還有其他的參數可以使用。
更多Python中json格式資料的編碼與解碼相關文章請關注PHP中文網!