zoukankan      html  css  js  c++  java
  • Python(Dict和Set类型)

    Dict

    1.建立dict

    用 dict 表示“名字”-“成绩”的查找表如下:
    d = {
        'Adam': 95,
        'Lisa': 85,
        'Bart': 59
    }
    我们把名字称为key,对应的成绩称为value,dict就是通过 key 来查找 value。类似c++中的map。

    2.访问dict

    注意: 通过 key 访问 dict 的value,只要 key 存在,dict就返回对应的value。如果key不存在,会直接报错:KeyError。
    要避免 KeyError 发生,有两个办法:
    一是先判断一下 key 是否存在,用 in 操作符:
    if 'Paul' in d:
        print d['Paul']
    如果 'Paul' 不存在,if语句判断为False,自然不会执行 print d['Paul'] ,从而避免了错误。
    二是使用dict本身提供的一个 get 方法,在Key不存在的时候,返回None:
    >>> print d.get('Bart')
    59
    >>> print d.get('Paul')
    None

    items函数会取每一个键名和键值,并将它们组成一系列的元组放到列表里。

    >>>print d.items()

    Set

    1.建立set

    set 持有一系列元素,这一点和 list 很像,但是set的元素没有重复,而且是无序的,这点和 dict 的 key很像。
    创建 set 的方式是调用 set() 并传入一个 list,list的元素将作为set的元素:
    >>> s = set(['A', 'B', 'C'])

    2.访问set

    访问 set中的某个元素实际上就是判断一个元素是否在set中。

    3.更新set

    添加元素时,用set的add()方法:
    >>> s = set([1, 2, 3])
    >>> s.add(4)
    >>> print s
    set([1, 2, 3, 4])
    如果添加的元素已经存在于set中,add()不会报错,但是不会加进去了:
    >>> s = set([1, 2, 3])
    >>> s.add(3)
    >>> print s
    set([1, 2, 3])
    删除set中的元素时,用set的remove()方法:
    >>> s = set([1, 2, 3, 4])
    >>> s.remove(4)
    >>> print s
    set([1, 2, 3])
    如果删除的元素不存在set中,remove()会报错


  • 相关阅读:
    vue 零散记录
    flex布局-弹性布局
    apply 和 call 的用法
    git版本控制系统重新认识
    Windows驱动过滤--kdbclass过滤,寒江独钓加强版
    Socket的select制作多客户端传输(Qt)
    基于g_soap制作的数据下载器,传输速度只有600kb 需改进
    lua中获取数组长度问题
    MySQL存储过程详解 mysql 存储过程(转:http://blog.sina.com.cn/s/blog_52d20fbf0100ofd5.html)
    lua接受C++返回值
  • 原文地址:https://www.cnblogs.com/nickqiao/p/7583367.html
Copyright © 2011-2022 走看看