python字典的setdefault的巧妙用法


Posted in Python onAugust 07, 2019

现在有一个员工字典,类似这样的结构

staff_dic = {"name":"灭霸", "age": 10000, "hobbies":["打响指", "扣脚"]}

假设我们要给员工添加爱好信息,但是我们不知道hobby这个键存不存在,我们通常的做法是分为三步:

1)从字典中取到hobbies对应的值,如果没有hobbies这个键,则设置这个值为空列表

2)对这个值进行更新操作

3)将更新后的值赋值回字典

hobbies= staff_dic.get("hobby",[])
hobbies.append("毁灭宇宙")
staff_dic["hobbies"] = hobbies

以上方法进行了两次查询操作

如果使用setdefault,只需要查询一次

staff_dic.setdefault("hobbies", []).append("毁灭宇宙")

注意:setdefault()有返回值,返回值为取到的值(键存在)或默认值(键不存在)

Python 相关文章推荐
用python登录Dr.com思路以及代码分享
Jun 25 Python
介绍Python的Django框架中的QuerySets
Apr 20 Python
在Python中用split()方法分割字符串的使用介绍
May 20 Python
Python实现高效求解素数代码实例
Jun 30 Python
Python类属性的延迟计算
Oct 22 Python
Python入门_浅谈逻辑判断与运算符
May 16 Python
Python从数据库读取大量数据批量写入文件的方法
Dec 10 Python
python3 pygame实现接小球游戏
May 14 Python
PyCharm 创建指定版本的 Django(超详图解教程)
Jun 18 Python
python 求某条线上特定x值或y值的点坐标方法
Jul 09 Python
python如何求圆的面积
Jul 01 Python
python全栈开发语法总结
Nov 22 Python
解决Django中调用keras的模型出现的问题
Aug 07 #Python
python 字典 setdefault()和get()方法比较详解
Aug 07 #Python
与Django结合利用模型对上传图片预测的实例详解
Aug 07 #Python
如何用Python来搭建一个简单的推荐系统
Aug 07 #Python
PIL对上传到Django的图片进行处理并保存的实例
Aug 07 #Python
django 实现将本地图片存入数据库,并能显示在web上的示例
Aug 07 #Python
Python学习笔记之Django创建第一个数据库模型的方法
Aug 07 #Python
You might like
腾讯QQ php程序员面试题目整理
2010/06/08 PHP
《PHP编程最快明白》第三讲:php数组
2010/11/01 PHP
php实现的通用图片处理类
2015/03/24 PHP
JavaScript格式化数字的函数代码
2010/11/30 Javascript
JavaScript中json对象和string对象之间相互转化
2012/12/26 Javascript
JS中attr和prop属性的区别以及优先选择示例介绍
2014/06/30 Javascript
jQuery修改class属性和CSS样式整理
2015/01/30 Javascript
jquery Validation表单验证使用详解
2020/09/12 Javascript
Js查找字符串中出现次数最多的字符及个数实例解析
2016/09/05 Javascript
js入门之Function函数的使用方法【新手必看】
2016/11/22 Javascript
基于vue.js实现图片轮播效果
2016/12/01 Javascript
JavaScript输出所选择起始与结束日期的方法
2017/07/12 Javascript
让网站自动生成章节目录索引的多个js代码
2018/01/07 Javascript
Vue 中可以定义组件模版的几种方式
2019/08/06 Javascript
Vue-CLI 项目在pycharm中配置方法
2019/08/30 Javascript
JavaScript提升机制Hoisting详解
2019/10/23 Javascript
JavaScript对象字面量和构造函数原理与用法详解
2020/04/18 Javascript
详解Python中的文本处理
2015/04/11 Python
python去除所有html标签的方法
2015/05/05 Python
Python常用的爬虫技巧总结
2016/03/28 Python
Python随机读取文件实现实例
2017/05/25 Python
用pandas按列合并两个文件的实例
2018/04/12 Python
python获取程序执行文件路径的方法(推荐)
2018/04/26 Python
python3获取文件中url内容并下载代码实例
2019/12/27 Python
pytorch:model.train和model.eval用法及区别详解
2020/02/20 Python
Opencv图像处理:如何判断图片里某个颜色值占的比例
2020/06/03 Python
Python爬虫抓取论坛关键字过程解析
2020/10/19 Python
领先的英国注册在线药房 :Simply Meds Online
2019/03/28 全球购物
英国领先的在线高尔夫商店:Gamola Golf
2019/11/16 全球购物
学生会竞选自荐信
2013/10/12 职场文书
村党支部换届选举方案
2014/05/02 职场文书
节约粮食标语
2014/06/18 职场文书
工作会议简报
2015/07/20 职场文书
早恋主题班会
2015/08/14 职场文书
小学四年级作文之写景
2019/08/23 职场文书
HTML+CSS+JS实现图片的瀑布流布局的示例代码
2021/04/22 HTML / CSS