一、python對json的支援
從python2.6開始,python標準庫中添加了對json的支援,操作json時,只需要import json即可。 二、python對象轉換成json字串
在把python對象轉換成json字串時,只需要如下知識即可:
1.python對象到json字串的轉換規則:
Python |
JSON |
dict |
object |
list, tuple |
array |
str, unicode |
string |
int, long, float |
number |
True |
true |
False |
false |
None |
null |
2. 主要使用如下函數:
json.dumps()
該函數的具體參數(具體用法參見附錄中連結):
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) 樣本
測試代碼:
#構造字典python2json = {}#構造listlistData = [1,2,3]python2json["listData"] = listDatapython2json["strData"] = "test python obj 2 json"#轉換成json字串json_str = json.dumps(python2json)print json_str
轉換結果:
{ "listData": [ 1, 2, 3 ], "strData": "test python obj 2 json"}
三、json字串轉換成python對象
同理,把json字串轉換成python對象也只需具備如下知識即可:
1.json字串到python對象的轉換規則:
JSON |
Python |
object |
dict |
array |
list |
string |
unicode |
number (int) |
int, long |
number (real) |
float |
true True |
|
false |
False |
null |
None |
2. 主要使用如下函數:
json.loads()
該函數的具體參數(具體用法參見附錄中連結):
json.loads(s[, encoding[, cls[, object_hook[, parse_float[, parse_int[, parse_constant[, object_pairs_hook[, **kw]]]]]]]]) 樣本
測試代碼:
str = '{"listData": [1, 2, 3], "strData": "test python obj 2 json"}'json2python = json.loads(str)print type(json2python)
轉換結果:
<type 'dict'>
四、附錄
https://docs.python.org/2/library/json.html
http://www.cnblogs.com/loleina/p/5623968.html