前言

在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小时内与您取得联系。