zoukankan      html  css  js  c++  java
  • 字典的setdefault() 和get()方法比较

    Python 字典

    setdefault() 函数 ---有key获取值、没key设置 key:default

      dict.setdefault(key, default=None)

      如果 key 在 字典中,返回对应的值。

      如果 key 不在字典中,则插入 key 及设置的默认值 default,并返回 default ,default 默认值为 None。

    get()函数---有key获取值、没key返回default

      dict.get(key, default=None)

     返回指定键的值,如果值不在字典中返回默认值 None。

    话不多说,上栗子:

    setdefault()方法:

    >>> dict = {}   
    >>> dict['成龙'] = '演员'  #添加键值对
    >>> dict  
    {'成龙': '演员'}  
    >>> dict.setdefault('成龙' , 'Duang')     # 值('演员')存在,故返回值('演员'),而不是'Duang'  
    '演员'  
    >>> dict  
    {'成龙': '演员'}  
    >>> dict.setdefault('窦唯' , '歌手')  
    '歌手'  
    >>> dict  
    {'成龙': '演员', '窦唯': '歌手'} 
    

    get()方法:

    >>> dict.setdefault('波多',18)  
    18
    >>> dict {'成龙': '演员', '窦唯': '歌手', '波多': 18} >>> dict.get('成龙') '演员' >>> dict.get('波多') 18

      

     附练习:

    # 循环迭代message字符串中每个字符,计算每个字符出现的次数
    # 涉及的技能包:1.字典的get()和setdeafult()方法 2.漂亮打印pprint
    
    import pprint
    message = 'It was a bright cold day in May,andd the clocks were striking thirteen.'
    count = {}
    
    #1 字典的setdefault()方法
    for character in message:
    	count.setdefault(character,0) #查询此次计数前此字母出现的次数
    	count[character] = count[character] + 1 #更新次数(for每次遍历一个字母,故次数加一)
    	
    pprint.pprint (count)
    
    
    count1 = {}
    #2 字典的get()方法
    for character in message:	
    	count1[character] = count1.get(character,0)+ 1 #查询出现次数,并加一
    	
    print (count1)
    

      

  • 相关阅读:
    Oracle 导入导出 创建用户等
    如何导出 Windows EventLog
    QT connect 的信号,不能写类名
    Easylogging
    Openstack Swift SLO & bulk delete 测试常用命令,文件等
    Openstack Swift Static Large Object (SLO)
    Linux 创建指定大小的文件
    Openstack Swiftclient 查看 log
    Openstack Swift 批量删除 (bulk delete)
    winsock server 示例代码中 shutdown 的选项
  • 原文地址:https://www.cnblogs.com/liangmingshen/p/9005374.html
Copyright © 2011-2022 走看看