您好,登錄后才能下訂單哦!
小編給大家分享一下json和python字典的區(qū)別是什么,希望大家閱讀完這篇文章后大所收獲,下面讓我們一起去探討吧!
json是一種數(shù)據(jù)的表現(xiàn)形式,是一種數(shù)據(jù)格式:比如在ajax中的數(shù)據(jù)接收類型,一般都是json類型的數(shù)據(jù)格式,也會有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ù)器超時,請重試!'); } });
json的含義與鍵值的寫法:
json是 【JavaScript Object Notation】 的首字母縮寫,字面的意思是【javascript對象表示法】,這里說的json指的是類似于javascript對象的一種數(shù)據(jù)格式對象,目前這種數(shù)據(jù)格式比較流行,逐漸替換掉了傳統(tǒng)的xml數(shù)據(jù)格式。
json數(shù)據(jù)對象類似于JavaScript中的對象,但是它的鍵對應(yīng)的值里面是沒有函數(shù)方法的,值可以是普通變量,不支持undefined,值還可以是數(shù)組或者json對象。
與JavaScript對象寫法不同的是,json對象的屬性名稱和字符串值需要用雙引號引起來,用單引號或者不用引號會導(dǎo)致讀取數(shù)據(jù)錯誤。
json格式的數(shù)據(jù):
{ “name”:“tom”, “age”:18 }
json的另外一個數(shù)據(jù)格式是數(shù)組,和javascript中的數(shù)組字面量相同。
[“tom”,18,“programmer”]
還可以是更復(fù)雜的數(shù)據(jù)機(jī)構(gòu):包括普通變量,數(shù)組,json對象:
{ “name”:“jack”, “age”:29, “hobby”:[“reading”,“travel”,“photography”] “school”:{ “name”:“Merrimack College”, “l(fā)ocation”:‘North Andover, MA’ } }
字典:
字典是一種數(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(屬性名稱),必須是用雙引號引起來的字符串。
關(guān)于 -hashable的數(shù)據(jù)類型-,簡單理解,就是不可變的數(shù)據(jù)類型;所以在字典中的鍵,可以是元組或者字符串等不可變的數(shù)據(jù)類型。
看完了這篇文章,相信你對json和python字典的區(qū)別是什么有了一定的了解,想了解更多相關(guān)知識,歡迎關(guān)注億速云行業(yè)資訊頻道,感謝各位的閱讀!
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。