• [python] 之 字典简介


    字典是python中唯一的映射类型,其哈希值(键key)和指向对象(值value)是一对多的关系;

    字典是可变对象,是容器类型,能存储任意个数,任意类型的映射类型,且包含在大括号中({key1:value, key2:value2, ...});

    字典中的数据类型是无序排列的.

    一、创建字典

    1.1 赋值创建

      dict1 = {...}

    1.2 工厂方法-dict()

      dict2 = dict((['x',1], ['y',2])) # {'x':1, 'y':2}

    1.3 内建方法-fromkeys(),创建默认字典

      dict3.fromkeys(keys,value=None)

      其中keys是一个元组类型,也可以是单个元素,但最终形成的字典是一个不同key对应相同value,若比提供value,则默认是None。

    二、访问字典

    1.1 for循环遍历字典键key

      for key in dict:

        print key,dict[key]

    1.2 方括号-[]

      dict[key]

    1.3 布尔操作-in 或 not in

      用于检测字典中是否存在某个键。

      key in dict

      key not in dict

    1.4 更新字典

      dict4 = {'a':1, 'b':2}

      添加一个数据项或元素:dict4['c'] = 4

      修改一个数据项或元素:dict4['a'] = 'm'

      删除一个数据项或元素:

        del 删除单个键值对:del dict4['a']

        dict4.clear() 清空字典键值对

        value = dict4.pop('a'[,default]) 删除字典中指定键值对,并返回key对应的值value

    1.5 字典不支持拼接(‘+’)和重复(‘*’)操作运算

    三、字典类型操作符

    3.1 字典键查找操作符- []

      用于获取字典中键对应的值;添加或修改字典中的键值对

    3.2 键成员关系操作符 - in 或 not in

      key in dict : 一般返回布尔值,可用于IF语句结构中,作为判断条件

    3.3   标准类型函数

      type() 工厂方法: 返回字典类型 ‘<type 'dict'>’

      str() 工厂方法:返回字典的字符串形式

      cmp() :字典的比较,其遵循一下顺序,字典长度,字典键,字典值

    3.4 映射类型相关函数

      dict([container]) 工厂函数,如果提供了容器(container)类,就用其中的条目填充字典,否则就创建一个空子典, dict(x=1, y=3)

      len() 内建函数,返回所有元素(键值对)数目

      hash() 内建函数,判断一个元素是否可以作为一个字典的键

      sorted(dict) 内建函数,按字典键,对字典进行排序

      

     3.5 字典内建方法

    dict.clear() 删除字典中的所有元素
    dict.copy() 返回字浅复制的一个副本
    dict.fromkeys(seq, val=None) 创建并返回一个新字典,以seq中的元素做字典,val为值(如果不提供val,则默认为None)
    dict.get(key,default=None) 获取字典key的val,如果字典中不含key,则返回设置的默认值default
    dict.has_key(key) key存在返回True,否则False
    dict.items() 返回一个包含字典中键值对元组列表
    dict.pop(key[,default]) 如果key存在,删除并返回dict[key];如果key不存在,则返回默认的default;若未设置default,则引发异常
    dict.setdefault(key,defaukt=None) 返回dict[key],但不删除key和val;如果key不存在,则在字典中添加dict[key]=default
    dict.update(dict2) 将字典dict2的键值对添加到字典dict
    dcit.keys() 返回一个包含字典中键的列表
    dict.values 返回一个包含字典中值的列表
       
       

    3.6 字典键

      不允许一个键对应多个值,当有键发生冲突时(字典键重复赋值),取最后(最近)的赋值

      键必须时可哈希的,不可变的类型都是可哈希的

  • 相关阅读:
    求两条链表有无交点和第一个交点
    重载自增运算符(前置自增++p和后置自增p++)
    二叉排序树和平衡二叉树
    红黑树
    java学习攻略
    Intellij IDEA / IntelliJ
    ngrinder test
    eclipsejeekeplerSR2win32x86_64 jsonedit plugin
    向叶子文文的.net之路学习(大量的转载)
    微软发布机制(转)从浅入深
  • 原文地址:https://www.cnblogs.com/xiaofeiIDO/p/6010788.html
Copyright © 2020-2023  润新知