溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

python中dict和json有什么區(qū)別

發(fā)布時(shí)間:2020-08-05 14:42:59 來源:億速云 閱讀:781 作者:小新 欄目:編程語言

這篇文章主要介紹python中dict和json有什么區(qū)別,文中介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們一定要看完!

字典:

字典是一種數(shù)據(jù)結(jié)構(gòu):比如python中所述的列表list, 元組tuple,集合set。

區(qū)別總結(jié):

定義上:字典是一種數(shù)據(jù)結(jié)構(gòu);

json是一種數(shù)據(jù)的表現(xiàn)形式,一種數(shù)據(jù)格式。

寫法上:字典中的鍵key,只要是hashable的數(shù)據(jù)類型即可;但是json的鍵key(屬性名稱),必須是用雙引號(hào)引起來的字符串。

關(guān)于 -hashable的數(shù)據(jù)類型-,簡(jiǎn)單理解,就是不可變的數(shù)據(jù)類型;所以在字典中的鍵,可以是元組或者字符串等不可變的數(shù)據(jù)類型。

json是一種數(shù)據(jù)的表現(xiàn)形式,是一種數(shù)據(jù)格式:比如在ajax中的數(shù)據(jù)接收類型,一般都是json類型的數(shù)據(jù)格式,也會(huì)有txt的數(shù)據(jù)格式;json是字符串的一種格式,本質(zhì)上還是字符串;
如下代碼所示:

$.ajax({
    url: '/change_data',
    type: 'GET',
    dataType: 'json',  //  json 為接收服務(wù)器返回的數(shù)據(jù)類型
    data:{'code':300268}
    success:function(dat){
        alert(dat.name);
    },
    error:function(){
        alert('服務(wù)器超時(shí),請(qǐng)重試!');
    }
});

json的含義與鍵值的寫法:

json是 【JavaScript Object Notation】 的首字母縮寫,字面的意思是【javascript對(duì)象表示法】,這里說的json指的是類似于javascript對(duì)象的一種數(shù)據(jù)格式對(duì)象,目前這種數(shù)據(jù)格式比較流行,逐漸替換掉了傳統(tǒng)的xml數(shù)據(jù)格式。

json數(shù)據(jù)對(duì)象類似于JavaScript中的對(duì)象,但是它的鍵對(duì)應(yīng)的值里面是沒有函數(shù)方法的,值可以是普通變量,不支持undefined,值還可以是數(shù)組或者json對(duì)象。

與JavaScript對(duì)象寫法不同的是,json對(duì)象的屬性名稱和字符串值需要用雙引號(hào)引起來,用單引號(hào)或者不用引號(hào)會(huì)導(dǎo)致讀取數(shù)據(jù)錯(cuò)誤。

json格式的數(shù)據(jù):

{
“name”:“tom”,
“age”:18
}

json的另外一個(gè)數(shù)據(jù)格式是數(shù)組,和javascript中的數(shù)組字面量相同。

[“tom”,18,“programmer”]

還可以是更復(fù)雜的數(shù)據(jù)機(jī)構(gòu):包括普通變量,數(shù)組,json對(duì)象:

{
“name”:“jack”,
“age”:29,
“hobby”:[“reading”,“travel”,“photography”]
“school”:{
“name”:“Merrimack College”,
“l(fā)ocation”:‘North Andover, MA’
} }

以上是python中dict和json有什么區(qū)別的所有內(nèi)容,感謝各位的閱讀!希望分享的內(nèi)容對(duì)大家有幫助,更多相關(guān)知識(shí),歡迎關(guān)注億速云行業(yè)資訊頻道!

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI