標籤:

如何用python解析json對象(基礎篇)

一、什麼是json?

JSON(JavaScript Object Notation) 是一種輕量級的數據交換格式,易於人閱讀和編寫.。

1、json語法:

{"name":"baidu","alexa":100,"site":null}n

對象可以包含多個 key/value(鍵/值)對。

key 必須是字元串,value 可以是合法的 JSON 數據類型(字元串, 數字, 對象, 數組, 布爾值或 null)。

key 和 value 中使用冒號(:)分割。

每個 key/value 對使用逗號(,)分割。

2、訪問對象值:

<!DOCTYPE html>n<html>n<head>n<meta charset="utf-8">n</head>n<body>n<p>你可以使用點號.來訪問 JSON 對象的值</p>n<p id="demo"></p>n<script>nvar myObj, x;nmyObj = { "name":"baidu", "alexa":100, "site":null };nx = myObj.name;ndocument.getElementById("demo").innerHTML = x;n</script>n</body>n</html>n

顯示結果如下:

3、循環對象:

<!DOCTYPE html>n<html>n<head>n<meta charset="utf-8">n</head>n<body>n<p>使用 for-in 來循環對象的屬性:</p>n<p id="demo"></p>n<script>nvar myObj = { "name":"baidu", "alexa":100, "site":null };nfor (x in myObj) {n document.getElementById("demo").innerHTML += x + "<br>";n}n</script>n</body>n</html>n

顯示結果如下:

二、如何用Python解碼JSON對象

1、json.loads

json.loads 用於解碼 JSON 數據。該函數返回 Python 欄位的數據類型。

import jsonnjsonDate={"a":1,"b":2,"c":3,"d":4,"e":5}ntext=json.loads(jsonDate)nprint(text)n

顯示結果如下:

2、json類型轉換到python類型對照表:

3、JSON 函數decode:

Python 可以使用 demjson.decode() 函數解碼 JSON 數據。該函數返回 Python 欄位的數據類型。語法如下:

demjson.decode(self, txt)n

示例:

import demjsonnnjson = {"a":1,"b":2,"c":3,"d":4,"e":5};nntext = demjson.decode(json)nprint textn

顯示結果如下:

三、Python 字典(Dictionary)

1、什麼是字典?

  • 字典(dictionary)是除列表以外python之中最靈活的內置數據結構類型。列表是有序的對象集合,字典是無序的對象集合。
  • 兩者之間的區別在於:字典當中的元素是通過鍵來存取的,而不是通過偏移存取。
  • 字典用"{ }"標識。字典由索引(key)和它對應的值value組成。

dict = {}ndict[one] = "This is one"ndict[2] = "This is two"n ntinydict = {name: john,code:6734, dept: sales}n n nprint(dict[one]) # 輸出鍵為one 的值nprint(dict[2]) # 輸出鍵為 2 的值nprint(tinydict) # 輸出完整的字典nprint(tinydict.keys()) # 輸出所有鍵nprint(tinydict.values()) # 輸出所有值n

顯示結果如下:

2、用方括弧訪問字典里的值:

dict = {Name: Zara, Age: 7, Class: First};n nprint("dict[Name]: ", dict[Name])nprint(dict[Age]: ", dict[Age])n

顯示結果如下:


推薦閱讀:

[新聞] CPython / 微軟 Pyjion / IBM Python+OMR
Flask框架從入門到實戰
python編程基礎(一)
配置IPython Notebook提供非本地訪問
構建PyQt5.8/Python2.7

TAG:Python | JSON |