字典dict的get和setdefault,以及collections的defaultdict

一:dict的get和setdefault

首先,字典dict的get和setdefault的用法都是xxx(key, value), 都是在字典中查找指定的键并返回值,当查找的key键在字典中存在时,两者作用相同。

 

参考:https://blog.csdn.net/any1where/article/details/127916548

get:在字典的键中查找key,如果找到,则返回该key键对应的值(该值是字典中已经存在的值);如果找不到,则返回value值。不会修改字典,只会返回get()自带的value值(即get()的第二个参数);


setdefault: 在字典的键中查找key,如果找到,则返回该key键对应的值(该值是字典中已经存在的值);如果找不到,则为字典添加key键,并将新添加的key对应的默认值设为default。
    会给字典添加一个key健,并将新添加的key键的对应的默认值设为default(是键对应的值,不是键本身)。因此,setdefault()会修改字典。

 

 二:collections的defaultdict

defaultdict和dict的区别就是,当引用不存在的键的时候,deault会自动返回一个类型的值,比如

a = defaultdict(int)

a[10]返回0,因为10不存在于a的键中,而int类型默认值是0,list默认值为:[],str默认值是:'',set默认值是:set()

defaultdict是dict的一个子类,可以用issubclass来进行判断。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值