1. 程式人生 > 其它 >【K8s網路】安裝Calico系統要求

【K8s網路】安裝Calico系統要求

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
'''
import
json 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
}
'''