Python中字典的setdefault()方法教程
前言
在python基础知识中有说过,字典是可变的数据类型,其参数又是键对值。setdefault()方法和字典的get()方法在一些地方比较相像,都可以得到给定键对应的值。但setdefault()方法可以在字典中并不包含有给定键的情况下,为给定键设定相应的值。
Python字典的setdefault方法原型如下:
dict.setdefault(key,default=None)
如果给定的key在字典中则返回该值,如果不在字典中,就将key插入到字典中,并将值设置为指定的default参数,default的缺省值为None。
使用setdefault方法相当于如下的操作:
ifkeyindict: reurndict[key] else: dict[key]=default returndefault
该方法与字典的get方法有些相似,但有些区别。dict.get和dict.setdefault方法在key存在于字典中时都能返回该值,在key不在字典中时,也都能返回缺省的值。两个方法的区别在于,当key不在字典中时setdefault方法会在字典插入缺省的键值并返回,而get方法只返回缺省值,不向字典中插入新的key。
示例:
>>>dct={} >>>dct {} >>>dct["name"]="huoty" >>>dct {'name':'huoty'} >>>dct.setdefault("name","esenich") 'huoty' >>>dct {'name':'huoty'} >>>dct.setdefault("fname","esenich") 'esenich' >>>dct {'name':'huoty','fname':'esenich'} >>>dct.setdefault("addr") >>>dct {'name':'huoty','fname':'esenich','addr':None} >>>dct.get("name","xxx") 'huoty' >>>dct {'name':'huoty','fname':'esenich','addr':None} >>>dct.get("age") >>>dct {'name':'huoty','fname':'esenich','addr':None} >>>dct.get("age",2) 2 >>>dct {'name':'huoty','fname':'esenich','addr':None}
总结
以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流。