【K8s網路】安裝Calico系統要求
阿新 • • 發佈:2021-08-09
JSON 是用於儲存和交換資料的語法。
JSON 是用 JavaScript 物件表示法(JavaScript object notation)編寫的文字。
Python 中的 JSON
Python 有一個名為json的內建包,可用於處理 JSON 資料。
json包
json.loads()將json進行解析 轉換成Python 字典
json.dumps()將字典轉換成json 字串
#引入json包 import json #json.loads() 方法對json進行解析。結果將是 Python 字典。 # 一些 JSON: x = '{ "name":"Bill", "age":63, "city":"Seatle"}' #解析x y=json.loads(x) print(y)#{'name': 'Bill', 'age': 63, 'city': 'Seatle'} #json.dumps()把Python字典轉換成json字串 z=json.dumps(y) print(z)#{"name": "Bill", "age": 63, "city": "Seatle"} print(z is y)#False
''' 您可以把以下型別的 Python 物件轉換為 JSON 字串: dict list tuple string int float True False None ''' importjson print(json.dumps({"name": "Bill", "age": 63})) #{"name": "Bill", "age": 63} print(json.dumps(["apple", "bananas"])) #["apple", "bananas"] print(json.dumps(("apple", "bananas"))) #["apple", "bananas"] print(json.dumps("hello")) #"hello" print(json.dumps(42)) #42 print(json.dumps(31.76)) #31.76 print(json.dumps(True)) #true print(json.dumps(False)) #false print(json.dumps(None)) #null
格式化結果
上面的例項列印一個 JSON 字串,但它不是很容易閱讀,沒有縮排和換行。
json.dumps()方法提供了令結果更易讀的引數:
使用indent引數定義縮排數:
使用separators引數來更改預設分隔符:預設值為("," , ":")
使用sort_keys引數來指定是否應對結果進行排序:
json.dumps(x, indent=4, separators=(". " , " = "))
#轉換包含所有合法資料型別的 Python 物件: x = { "name": "Bill", "age": 63, "married": True, "divorced": False, "children": ("Jennifer", "Rory", "Phoebe"), "pets": None, "cars": [{ "model": "Porsche", "mpg": 38.2 }, { "model": "BMW M5", "mpg": 26.9 }] } print(json.dumps(x)) #格式化結果列印一個 JSON 字串,但它不是很容易閱讀,沒有縮排和換行。 ''' {"name": "Bill", "age": 63, "married": true, "divorced": false, "children": ["Jennifer", "Rory", "Phoebe"], "pets": null, "cars": [{"model": "Porsche", "mpg": 38.2}, {"model": "BMW M5", "mpg": 26.9}]} ''' #json.dumps(item,indent) 方法提供了令結果更易讀的引數: #使用 indent 引數定義縮排數: print(json.dumps(x, indent=4)) ''' { "name": "Bill", "age": 63, "married": true, "divorced": false, "children": [ "Jennifer", "Rory", "Phoebe" ], "pets": null, "cars": [ { "model": "Porsche", "mpg": 38.2 }, { "model": "BMW M5", "mpg": 26.9 } ] } ''' #separators 引數 #您還可以定義分隔符,預設值為(", " , ": "),這意味著使用逗號和空格分隔每個物件,使用冒號和空格將鍵與值分開: z=json.dumps(x, indent=4, separators=(". " , " = ")) print(z) ''' { "name" = "Bill". "age" = 63. "married" = true. "divorced" = false. "children" = [ "Jennifer". "Rory". "Phoebe" ]. "pets" = null. "cars" = [ { "model" = "Porsche". "mpg" = 38.2 }. { "model" = "BMW M5". "mpg" = 26.9 } ] } ''' #對結果排序 # json.dumps() 方法提供了對結果中的鍵進行排序的引數: #使用 sort_keys 引數來指定是否應對結果進行排序: p=json.dumps(x, indent=4, sort_keys=True) print(p) '不知道什麼作用 按什麼順序排列的' ''' { "age": 63, "cars": [ { "model": "Porsche", "mpg": 38.2 }, { "model": "BMW M5", "mpg": 26.9 } ], "children": [ "Jennifer", "Rory", "Phoebe" ], "divorced": false, "married": true, "name": "Bill", "pets": null } '''