在Python中, JSONObject 對應 dict,JSONArray對應listjava
1,JSONObjectjson
json對象,就是一個鍵對應一個值,使用的是大括號{ },如:{key:value}數組
</pre><pre name="code" class="java">JSONArray getJsonArray=JSONArray.fromObject(arrayStr);//將結果轉換成JSONArray對象的形式 JSONObject getJsonObj = getJsonArray.getJSONObject(0);//獲取json數組中的第一項 String result=getJsonObj.getJSONObject("name1").getJSONObject("name2").getJSONObject("name4");
2,JSONArrayspa
json數組,使用中括號[ ],只不過數組裏面的項也是json鍵值對格式的code
Json對象中添加的是鍵值對,JSONArray中添加的是Json對象對象
JSONObject Json = new JSONObject(); JSONArray JsonArray = new JSONArray(); Json.put("key", "value");//JSONObject對象中添加鍵值對 JsonArray.add(Json);//將JSONObject對象添加到Json數組中
三、JSONObject與Mapblog
Map map和json都是鍵值對,不一樣的是map中鍵值對中間用等號分開,json中鍵值對中間用冒號分開。其實json就是一種特殊形式的map。字符串
Map<String, String> strmap = new JsonObject();get
四、json.load()與json.dump() json.dumps() 可結合序列化 反序列化記憶 序列化即將對象序列化爲字符串存儲與磁盤。class
json.load():將json字符串轉爲對象,如dict,JsonObject
json.dumps():將對象轉爲json字符串,如java中toJsonString()
In [1]: import json In [2]: a = {'name': 'wang', 'age': 29} In [3]: b = json.dumps(a) In [4]: print b, type(b) {"age": 29, "name": "wang"} <type 'str'> In [11]: json.loads(b) Out[11]: {u'age': 29, u'name': u'wang'} In [12]: print type(json.loads(b)) <type 'dict'>
json.dump():實際中用的較少,將對象轉爲str並存入文件,須要寫入文件參數json.dump(a, fp)