美文网首页
集合和字典(第12篇)

集合和字典(第12篇)

作者: 你好星期四 | 来源:发表于2016-03-29 21:31 被阅读54次

    集合(set)

    还记得初中数学中的集合的概念吗?

    {1, 2, 3}
    

    Python中的集合跟数学中的一样。你可以通过set([1, 2, 3, 4])的方式,用一个列表来创建一个集合:

    >>> set([1,2,3, 4])
    {1, 2, 3, 4}
    

    跟数学中的集合一样,Python中的集合也不可以有重复元素:

    >>> {1, 2, 2, 3}
    {1, 2, 3}
    

    你可以通过add()方法添加元素:

    >>> s = {1, 2, 2, 3}
    >>> s.add(4)
    {1, 2, 3, 4}
    

    还可以通过remove()方法删除元素:

    >>> s.remove(2)
    >>>s
    {1, 3, 4}
    

    你甚至还可以进行数学上的交集、并集操作:

    >>> s1 = set([1, 2, 3])
    >>> s2 = set([2, 3, 4])
    >>> s1 & s2
    {2, 3}
    >>> s1 | s2
    {1, 2, 3, 4}
    

    值得注意的一点是,set里的元素必须是不可变元素,比如字符串,数字。set虽然可以用列表初始化,但它不能包含列表。

    字典

    字典里的每个元素是一个一个的键值对。

    >>> d = {"张三":100, "李四":96, "王五": 88}
    

    每个元素,前面的是键,后面的是值。键必须是唯一的,如果两个键相同,后面的键值对会顶替前面的值。你可以通过键来获取值:

    >>> d["张三"]
    100
    >>> d["张三"] = 99
    >>> d["张三"]
    99
    

    如果key不存在,就会报错:

    >>> d['赵六']
    Traceback (most recent call last):
      File "<pyshell#24>", line 1, in <module>
        d['赵六']
    KeyError: '赵六'
    

    你有两种方法来判断key是否存在:
    1.通过in来判断:

    >>> "王二麻" in d
    False
    

    2.通过get()方法,如果key不存在,返回None,或者指定默认值:

    >>> d.get('王二麻')
    >>> d.get('王二麻', 60)
    60
    

    删除字典里安的元素可以通过pop()方法:

    >>> d.pop('张三')
    99
    >>> d
    {"李四":96, "王五": 88}
    

    相关文章

      网友评论

          本文标题:集合和字典(第12篇)

          本文链接:https://www.haomeiwen.com/subject/wxmslttx.html