Python字典的setdefault() 和get()方法比较

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()方法:

'''
遇到问题没人解答?小编创建了一个Python学习交流QQ群:778463939
寻找有志同道合的小伙伴,互帮互助,群里还有不错的视频学习教程和PDF电子书!
'''
>>> 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)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值