1. 程式人生 > >處理JSON數據

處理JSON數據

spa under type 常用 json數據 tex web應用 brush 字符串轉換

JSON是一種格式,它以JavaScript源代碼的形式將信息保存在純文本文件中,常用於許多web應用程序中。

很多網站都提供JSON格式的內容,作為程序與網站交互的方式。這就是提供API。

訪問API和通過URL訪問任何網頁都是一樣的。但API返回的數據是針對機器格式化的,API不是人容易閱讀的。


json模塊處理了JSON數據字符串和python值之間轉換的所有細節,得到了json.loads()和json.dumps()函數。

JSON不能存儲每一種python值,它只能包含字符串、整型、浮點型、布爾型、列表、字典和NoneType。

JSON不能表示python特有的對象,如File對象、CSV Reader或Writer對象等。


用loads()函數讀取JSON

要將包含JSON數據的字符串轉換為python的值,就將它傳遞給json.loads()函數。

調用loads(),傳入一個JSON數據字符串,JSON字符串總是用雙引號。它將返回為一個沒有順序的python字典。

樣例:

>>> jsondata='{"name":"Tom","sex":"male","age":"20"}'
>>> import json
>>> jsonvalue=json.loads(jsondata)
>>> jsonvalue
{'name': 'Tom', 'sex': 'male', 'age': '20'}


用dumps()函數寫出JSON

json.dumps()函數將一個python值轉換成JSON格式的數據字符串。

該值只能是字典、列表、整型、浮點型、字符串、布爾型或None。


樣例:

>>> jsonvalue={'name': 'Tom', 'sex': 'male', 'age': '20'}
>>> import json
>>> jsondata=json.dumps(jsonvalue)
>>> jsondata
'{"name": "Tom", "sex": "male", "age": "20"}'

處理JSON數據