您好,登錄后才能下訂單哦!
這篇文章主要介紹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è)資訊頻道!
免責(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)容。