• Python中的字典


    1.字典的比较

    字典的比较顺序如下:

    1. 先比较字典的元素的个数,那个多,就哪个大;
    2. 比较字典的键,在比较字典的键的时候,需要注意的是比较的顺序是按照keys返回值来进行的比较;
    3. 比较字典的值,值也是按照items返回值来进行比较,主要就是按照数字和字母的大小比较;
    4. 如果以上的比较都相等,那么就都是相等的。

    cmp(dict1,dict2):如果两个字典的元素相同返回0,如果字典dict1大于字典dict2返回1,如果字典dict1小于字典dict2返回-1。

    >>>dict1={'name':'af','better':'yes'}
    >>> dict2={'age':'12'}
    >>> cmp(dict1,dict2)
    1
    >>> dict1={'name':'kel'}
    >>> dict2={}
    >>> cmp(dict1,dict2) #dict1的元素比dict2的多
    1
    >>> dict3={'name':'a'}
    >>> cmp(dict1,dict3) #dict1的kel比a大,字母k在a的后面
    1
    >>> dict4={'name':'kel','age':27}
    >>> dict5={'name':'mel','age':17} #比较的时候,根据keys返回的比较,所以27比17大,而不是比较我们看到的顺序
    >>> cmp(dict4,dict5)
    1
    #keys的顺序是'age','name'

    2.字典的合并

    1)借助dict(d1.items() + d2.items())的方法

    >>> d1={'a':'1','b':'2'}
    >>> d2={'c':'3'}
    >>> dict(d1.items()+d2.items())
    {'a': '1', 'c': '3', 'b': '2'}
    >>> 
    >>> dict(d2.items()+d1.items())
    {'a': '1', 'c': '3', 'b': '2'}
    >>> 
    >>> #有相同的key值,会合并
    >>> d3={'c':'3','b':'4'}
    >>> dict(d3.items()+d1.items())
    {'a': '1', 'c': '3', 'b': '2'}
    >>> dict(d1.items()+d3.items())
    {'a': '1', 'c': '3', 'b': '4'}

    备注:

    • d1.items()获取字典的键值对的列表
    • d1.items() + d2.items()拼成一个新的列表
    • dict(d1.items()+d2.items())将合并成的列表转变成新的字典

    2)借助字典的update()方法

    >>> d1 
    {'a': '1', 'b': '2'}
    >>> d3
    {'c': '3', 'b': '4'}
    >>> d4={}
    >>> d4.update(d1)
    >>> d4
    {'a': '1', 'b': '2'}
    >>> d4.update(d3)
    >>> d4
    {'a': '1', 'c': '3', 'b': '4'}
    >>> #使用copy
    >>> d4=d1.copy()
    >>> d4
    {'a': '1', 'b': '2'}
    >>> d4.update(d3)
    >>> d4
    {'a': '1', 'c': '3', 'b': '4'}

    3)借助字典的dict(d1, **d2)方法

    >>> d1 
    {'a': '1', 'b': '2'}
    >>> d3
    {'c': '3', 'b': '4'}
    >>> 
    >>> dict(d1,**d3)
    {'a': '1', 'c': '3', 'b': '4'}
    >>> dict(d3,**d1)
    {'a': '1', 'c': '3', 'b': '2'}

    4)借助字典的常规for循环处理方法

    >>> d1
    {'a': '1', 'b': '2'}
    >>> d3
    {'c': '3', 'b': '4'}
    >>> d4={}
    >>> 
    >>> for i,v in d1.items():
    ...     d4[i]=v
    ... 
    >>> d4
    {'a': '1', 'b': '2'}
    >>> for i,v in d3.items():
    ...     d4[i]=v
    ... 
    >>> d4
    {'a': '1', 'c': '3', 'b': '4'} 
  • 相关阅读:
    【2020】iOS证书(.p12)和描述文件(.mobileprovision)一键申请流程
    苹果开发者账号正在调查原因解答
    【2020最新】苹果iOS开发者到期续费流程
    【2020】联系苹果客服电话入口及步骤
    苹果电脑Transporter App及Windows上传ipa工具Appuploader
    一文学会苹果TestFlight上架详细流程
    iOS APP打包上线App Store七个步骤详解(2020版)
    技术分享 | mysql 表数据校验
    MySQL 自带的4个系统数据库的说明
    linux定时任务crontab怎样执行root命令
  • 原文地址:https://www.cnblogs.com/mianbaoshu/p/10563685.html
Copyright © 2020-2023  润新知