字典:
字典是一種數據結構:比如python中所述的列表list,元組tuple,集合set。
區別總結:
定義上:字典是一種數據結構;
json是一種數據的表現形式,一種數據格式。
寫法上:字典中的鍵key,只要是hashable的數據類型即可;但是json的鍵key(屬性名稱),必須是用雙引號引起來的字符串。
關于-hashable的數據類型-,簡單理解,就是不可變的數據類型;所以在字典中的鍵,可以是元組或者字符串等不可變的數據類型。
json是一種數據的表現形式,是一種數據格式:比如在ajax中的數據接收類型,一般都是json類型的數據格式,也會有txt的數據格式;json是字符串的一種格式,本質上還是字符串;
如下代碼所示:
$.ajax({
url:'/change_data',
type:'GET',
dataType:'json',//json為接收服務器返回的數據類型
data:{'code':300268}
success:function(dat){
alert(dat.name);
},
error:function(){
alert('服務器超時,請重試!');
}
});
json的含義與鍵值的寫法:
json是【JavaScriptObjectNotation】的首字母縮寫,字面的意思是【javascript對象表示法】,這里說的json指的是類似于javascript對象的一種數據格式對象,目前這種數據格式比較流行,逐漸替換掉了傳統的xml數據格式。
json數據對象類似于JavaScript中的對象,但是它的鍵對應的值里面是沒有函數方法的,值可以是普通變量,不支持undefined,值還可以是數組或者json對象。
與JavaScript對象寫法不同的是,json對象的屬性名稱和字符串值需要用雙引號引起來,用單引號或者不用引號會導致讀取數據錯誤。
json格式的數據:
{
“name”:“tom”,
“age”:18
}
json的另外一個數據格式是數組,和javascript中的數組字面量相同。
[“tom”,18,“programmer”]
還可以是更復雜的數據機構:包括普通變量,數組,json對象:
{
“name”:“jack”,
“age”:29,
“hobby”:[“reading”,“travel”,“photography”]
“school”:{
“name”:“MerrimackCollege”,
“location”:‘NorthAndover,MA’
}}
以上內容為大家介紹了python培訓之dict和json的區別是什么,希望對大家有所幫助,如果想要了解更多Python相關知識,請關注IT培訓機構:千鋒教育。