• 技术文章 >常见问题 >Python常见问题

    python的dict和json的区别是什么

    silencementsilencement2019-11-25 10:33:35原创2086

    字典:

    字典是一种数据结构:比如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是 【JavaScript Object Notation】 的首字母缩写,字面的意思是【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”:“Merrimack College”,
    “location”:‘North Andover, MA’
    } }
    专题推荐:字典
    上一篇:python里百分号是啥意思 下一篇:python sum函数怎么用

    相关文章推荐

    • python中怎么遍历字典• python3判断字典中key是否存在• python字典怎么加元素

    全部评论我要评论

    © 2021 Python学习网 苏ICP备2021003149号-1

  • 取消发布评论
  • 

    Python学习网