全网整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:400-708-3566

Python中字典的setdefault()方法教程

前言

在python基础知识中有说过,字典是可变的数据类型,其参数又是键对值。setdefault()方法和字典的get()方法在一些地方比较相像,都可以得到给定键对应的值。但setdefault()方法可以在字典中并不包含有给定键的情况下,为给定键设定相应的值。

Python 字典的 setdefault 方法原型如下:

dict.setdefault(key, default=None)

如果给定的 key 在字典中则返回该值,如果不在字典中,就将 key 插入到字典中,并将值设置为指定的 default 参数,default 的缺省值为 None。

使用 setdefault 方法相当于如下的操作:

if key in dict:
 reurn dict[key]
else:
 dict[key] = default
 return default

该方法与字典的 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}

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流。


# python字典setdefault  # python  # setdefault  # python中setdefault  # Java map.getOrDefault()方法的用法详解  # python字典setdefault方法和get方法使用实例  # python 字典 setdefault()和get()方法比较详解  # Java 8中default方法能做什么?不能做什么?  # Python使用defaultdict读取文件各列的方法  # python错误:AttributeError: ''module'' object has no   # Java8新特性之默认方法(default)浅析  # default怎么修饰接口中的方法详解  # 中时  # 都能  # 又是  # 中有  # 说过  # 会在  # 并将  # 这篇文章  # 就将  # 可以得到  # 设置为  # 不向  # 值为  # 键值  # 情况下  # 有疑问  # esenich  # fname 


相关文章: 5种Android数据存储方式汇总  GML (Geography Markup Language)是什么,它如何用XML来表示地理空间信息?  内网网站制作软件,内网的网站如何发布到外网?  沈阳制作网站公司排名,沈阳装饰协会官方网站?  如何快速辨别茅台真假?关键步骤解析  建站之星上传入口如何快速找到?  如何在企业微信快速生成手机电脑官网?  rsync同步时出现rsync: failed to set times on “xxxx”: Operation not permitted  建站之星如何快速解决建站难题?  如何高效完成独享虚拟主机建站?  网站制作知乎推荐,想做自己的网站用什么工具比较好?  建站之星如何快速生成多端适配网站?  建站之星如何修改网站生成路径?  简易网站制作视频教程,使用记事本编写一个简单的网页html文件?  完全自定义免费建站平台:主题模板在线生成一站式服务  建站之星Pro快速搭建教程:模板选择与功能配置指南  娃派WAP自助建站:免费模板+移动优化,快速打造专业网站  如何使用Golang安装API文档生成工具_快速生成接口文档  北京网站制作网页,网站升级改版需要多久?  jQuery 常见小例汇总  建站IDE高效指南:快速搭建+SEO优化+自适应模板全解析  矢量图网站制作软件,用千图网的一张矢量图做公司app首页,该网站并未说明版权等问题,这样做算不算侵权?应该如何解决?  大学网站设计制作软件有哪些,如何将网站制作成自己app?  北京制作网站的公司排名,北京三快科技有限公司是做什么?北京三快科技?  儿童网站界面设计图片,中国少年儿童教育网站-怎么去注册?  网站视频制作书签怎么做,ie浏览器怎么将网站固定在书签工具栏?  如何在阿里云服务器自主搭建网站?  C++中的Pimpl idiom是什么,有什么好处?(隐藏实现)  零基础网站服务器架设实战:轻量应用与域名解析配置指南  建站之星安全性能如何?防护体系能否抵御黑客入侵?  建站主机CVM配置优化、SEO策略与性能提升指南  建站之星如何保障用户数据免受黑客入侵?  如何在Mac上搭建Golang开发环境_使用Homebrew安装和管理Go版本  建站主机SSH密钥生成步骤及常见问题解答?  官网建站费用明细查询_企业建站套餐价格及收费标准指南  如何快速搭建高效WAP手机网站吸引移动用户?  C++时间戳转换成日期时间的步骤和示例代码  如何高效搭建专业期货交易平台网站?  网站广告牌制作方法,街上的广告牌,横幅,用PS还是其他软件做的?  网站制作免费,什么网站能看正片电影?  想学网站制作怎么学,建立一个网站要花费多少?  深入理解Android中的xmlns:tools属性  ,怎么用自己头像做动态表情包?  大连 网站制作,大连天途有线官网?  网站专业制作公司,网站编辑是做什么的?好做吗?工作前景如何?  如何处理“XML格式不正确”错误 常见XML well-formed问题解决方法  建站DNS解析失败?如何正确配置域名服务器?  宿州网站制作公司兴策,安徽省低保查询网站?  制作网站建设的公司有哪些,网站建设比较好的公司都有哪些?  寿县云建站:智能SEO优化与多行业模板快速上线指南 

您的项目需求

*请认真填写需求信息,我们会在24小时内与您取得联系。