zoukankan      html  css  js  c++  java
  • 重走py 之路 ——字典和集合(二)

    前言

    python 中有6大标准类型:

    数字(Number)
    字符串(String)
    列表(List)
    元组(Tumple)
    集合(Set)
    字典(Dictionary)
    

    前面已经介绍了上面4种,还有下面两种来介绍一下。

    正文

    字典

    字典看起来非常像json,是的非常非常像,但是我们起码需要明白的是json是一个字符格式,而字典是一种数据结构。

    区别:

    1)json的key只能是字符串,dict的key可以是任何可hash的对象,例如:字符串、数字、元组等。
    
    2)json的key可以是有序、重复的;dict的key不可重复;
    
    3)json的value只能是字符串、浮点数、布尔值或者null,或者它们构成的数组或者对象;
    
    4)json任意key存在默认值undefined,dict默认没有默认值;
    
    5)json访问方式可以是[],也可以是.,遍历方式分in,of; dict的value仅仅可以下标访问;
    
    6)dict可以嵌套tuple,json里只有数组
    
    7)json:true、false、null
    
    8)dict:True、False、None
    
    9)json中文必须是unicode编码,如“u6211”
    
    10)json的类型时字符串,字典的类型是dict
    

    总之,他们只是看起来像而已,但是并没有什么血缘关系,可以看做异父异母的亲兄弟吧。

    创建一个字典:

    # coding: utf-8
    test1={'name':"zhang san",
        'age':18
    }
    print(test1);
    

    这样就ok了,是的没有错,这样就建立了一个字典。

    值得注意的是,我在上面注释了一行:coding: utf-8,如果没有这个python 无法解析中文,并给你抛出一个异常。

    如果你新增一个值,那么:

    # coding: utf-8
    test1={'name':"zhang san",
        'age':18
    }
    test1["school"]="primary";
    print(test1);
    

    这样就可以了,你的key和value 可以是任意类型的值,这和静态语言不一样。

    你可以在字典中套用列表:

    # coding: utf-8
    test1={'name':"zhang san",
        'age':18
    }
    test1["school"]="primary";
    test1["friend"]=["tony","tom","lily"];
    print(test1);
    

    当然,你还可以在列表中套用字典。

    # coding: utf-8
    test1={'name':"zhang san",
        'age':18
    }
    test1["school"]="primary";
    test1["friend"]=["tony","tom","lily"];
    student=[test1];
    print(student);
    

    [{'age': 18, 'name': 'zhang san', 'friend': ['tony', 'tom', 'lily'], 'school': 'primary'}]

    你会发现,它对数据的支持真的太好了,如果你有一些数据的功能需要处理,python觉得是一个很好的选择。

    集合

    创建一个集合同样非常的简单:

    # coding: utf-8
    test1={"1",1}
    print(test1);
    

    输出:set(['1', 1])

    没错,就是一个大括号,然后里面写了一些object,接着set就生成了。

    set 有一些函数,需要都去试一试,你会发现一些非常方便的功能,这样你在开发的时候就不用查找某个查询该怎么写,事实上大部分都提供了。

    next Function

  • 相关阅读:
    织梦开发——相关阅读likeart应用
    织梦标签教程
    织梦专题调用代码
    HIT 2543 Stone IV
    POJ 3680 Intervals
    HIT 2739 The Chinese Postman Problem
    POJ 1273 Drainage Ditches
    POJ 2455 Secret Milking Machine
    SPOJ 371 Boxes
    HIT 2715 Matrix3
  • 原文地址:https://www.cnblogs.com/aoximin/p/14054836.html
Copyright © 2011-2022 走看看