JSON(JavaScript Object Notation)是一種輕量級的數據交換格式。 易於讀寫。 易於機器解析和生成。 JSON採用徹底獨立語言的文本格式,同時使用類詞語C語言家族的習慣,是理想的數據交換語言。python
import json obj = [[1,2,3],123,123.123,'abc',{'key1':(1,2,3),'key2':(4,5,6)}] encodedjson = json.dumps(obj) print repr(obj) print encodedjson 輸出: [[1, 2, 3], 123, 123.123, 'abc', {'key2': (4, 5, 6), 'key1': (1, 2, 3)}] [[1, 2, 3], 123, 123.123, "abc", {"key2": [4, 5, 6], "key1": [1, 2, 3]}]
在json的編碼過程當中,會將python原生數據類型向json類型轉化json
Python | json |
---|---|
dict | object |
list | array |
str,unicode | string |
int,long,float | number |
True | true |
False | false |
None | null |
json.dumps()方法返回了一個str對象encodejson編碼
decodejson = json.loads(encodedjson) print type(decodejson) print decodejson[4]['key1'] print decodejson 輸出: <type 'list'> [1, 2, 3] [[1, 2, 3], 123, 123.123, u'abc', {u'key2': [4, 5, 6], u'key1': [1, 2, 3]}]
loads方法返回了原始的對象,從json到python的類型轉換對照以下:code
|JSON|Python| |:--|:--| |object|dict |array|list |string|unicode |number(int)|int, long |number(real)|float |true|True |false|False |null|None對象