• Python字典


    字典是Python中唯一内建的映射类型,是作为可变的哈希表实现的,字典中的值储存在特定的键下,键可以是数字、字符串或元祖。

    创建字典:

    phonebook={ 'Alice' : 'earth' , 'Beth' : 9102 }

    fdict=dict((['x',1],['y',2]))   ->    fdict={'y':2,'x':1}

    ddict={}.fromkeys(('x','y'),-1)    ->   {'y':-1,'x':-1}

    edict={}.fromkeys(('foo','bar'))   ->  {'foo':None,'bar':None}

    删除操作:

    del dict['name']      删除键为name的项

    dict.clear()     删除所有项

    del dict     删除整个字典

    dictl.pop('name')    删除并返回键为name的项

    工厂函数:

    dict()

    dict(zip(('x','y'),(1,2)))  ->  {'y':2,'x':1}

    dict([['x',1],['y',2]])  ->  {'y':2,'x':1}

    dict(x=1,y=2)  ->  {'y':2,'x':1}

    dict8={'y':2,'x':1}   dict9=dict(**dict8)   ->  dict9=dict8

    由键-值对组成,键是唯一的,值不唯一.键重复时取最后一个。是一种无序的数据集

    所有不可变的类型都是可哈希的,可哈希的类型都可以作为字典的键。

    基本字典操作 len(d) 返回字典d中的键值对组合的数量
      d[k] 返回字典d中键k的值
      d[k]=v 将值v关联到字典d中键k上
      del d[k] 删除键为k的项
      k in d 检查d中是否含有键为k的项

    例子:

    Peple={

      'Alice':{

        'phone':'2312',

        'addr':'foo driver 23'

      }

      'Beth':{

        'phone':'4453',

        'addr':'baz vav'

      }

    访问里面的项目应该是people[name][key]

    字典的格式化字符串:

    phone {'Beth':'9102','Alice':'2321'}

    "Alice's phone number is %(Alice)s." % phone

     

    字典中的方法:

    clear d.clear() 清除了字典d中的所有值 无返回值
    copy y=x.copy() 浅复制  
    deepcopy dc=deepcopy(d) 深复制   
    fromkeys 

    {}.fromkeys(['name','age'])

    返回{'age':None,'name':None}

    使用给定的键建立新的字典,每个键对应一个默认的None  
    get 

    d['name']

    d.get('name')

    不存在会报错

    不存在不会报错,返回None

     
    has_key d.has_key('name')  是否含有特定的键,相当于k in d 返回布尔值
    items/iteritems  d.items() 将字典中所有项以列表形式返回 返回键值对形式的列表 
    keys/iterkeys   

    将字典中的键以列表形式返回

    iterkeys返回针对键的迭代器

     
    pop  d.pop('x')  移出字典d中键为x的项 返回值为键x的值 
    popitem  d.popitem()  返回字典d中随机项(键值),并从原字典中删除 返回随机元祖,一对键值
    setdefault  d.setdefault('name1','aaa') 

    查找键为name1的值,并返回键name1的值

    若键name1不存在,则给d字典添加新的键值‘name1’:'aaa'

    返回键值
    update  d.update(x) 把字典x中的值更新到字典d上,若有相同的键则会进行覆盖  无返回值 
    values/itervalues  d.values() 返回字典d中的值,不包含键,itervalues返回值的迭代器  以列表形式返回字典值
    dict      

     两个列表组合成一个字典:

    >>> a = [1,2,3,4]
    >>> d = ['fa','fb','fc','fd','fe']
    >>> dict(zip(a,d))
    {1: 'fa', 2: 'fb', 3: 'fc', 4: 'fd'}

  • 相关阅读:
    自定义滚动条原理
    多个轮播图或者选项卡显示在一个页面是,使用代码重用
    浮动与清除
    cni 添加网络 流程分析
    《MapReduce: Simplified Data Processing on Large Cluster 》翻译
    OpenStack overview 笔记
    docker containerd shim分析
    docker containerd 中的create 容器操作
    MIT jos 6.828 Fall 2014 训练记录(lab 6)
    docker containerd中的容器操作
  • 原文地址:https://www.cnblogs.com/zz27zz/p/7389409.html
Copyright © 2020-2023  润新知