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实现的扫雷游戏实例代码
Aug 01 Python
详解Python中DOM方法的动态性
Apr 11 Python
Python基于回溯法子集树模板解决全排列问题示例
Sep 07 Python
Python实现的堆排序算法示例
Apr 29 Python
使用Python更换外网IP的方法
Jul 09 Python
django的ORM操作 增加和查询
Jul 26 Python
Python3 使用selenium插件爬取苏宁商家联系电话
Dec 23 Python
python中如何使用insert函数
Jan 09 Python
python文件和文件夹复制函数
Feb 07 Python
opencv+python实现鼠标点击图像,输出该点的RGB和HSV值
Jun 02 Python
Keras之fit_generator与train_on_batch用法
Jun 17 Python
python MD5加密的示例
Oct 19 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
php strftime函数的详细用法
2018/06/21 PHP
jquery 表格分页等操作实现代码(pagedown,pageup)
2010/04/11 Javascript
用显卡加速,轻松把笔记本打造成取暖器的办法!
2013/04/17 Javascript
Javascript 颜色渐变效果的实现代码
2013/10/01 Javascript
javascript获取元素偏移量的方法有哪些
2014/06/24 Javascript
使用JavaScript的AngularJS库编写hello world的方法
2015/06/23 Javascript
全面解析Bootstrap中scrollspy(滚动监听)的使用方法
2016/06/06 Javascript
JavaScript操作 url 中 search 部分方法函数
2016/06/15 Javascript
JavaScript6 let 新语法优势介绍
2016/07/15 Javascript
D3.js实现雷达图的方法详解
2016/09/22 Javascript
利用JS实现点击按钮后图片自动切换的简单方法
2016/10/24 Javascript
微信小程序-横向滑动scroll-view隐藏滚动条
2017/04/20 Javascript
vue.js中过滤器的使用教程
2017/06/08 Javascript
BackBone及其实例探究_动力节点Java学院整理
2017/07/14 Javascript
jQuery实现可兼容IE6的遮罩功能详解
2017/09/19 jQuery
js提取中文拼音首字母的封装工具类
2018/03/12 Javascript
vue 中基于html5 drag drap的拖放效果案例分析
2018/11/01 Javascript
vue打包静态资源后显示空白及static文件路径报错的解决
2020/09/02 Javascript
Python中关键字nonlocal和global的声明与解析
2017/03/12 Python
Python实现将doc转化pdf格式文档的方法
2018/01/19 Python
浅谈Python Opencv中gamma变换的使用详解
2018/04/02 Python
python 调用有道api接口的方法
2019/01/03 Python
pandas DataFrame 交集并集补集的实现
2019/06/24 Python
pymysql模块的使用(增删改查)详解
2019/09/09 Python
Python搭建代理IP池实现接口设置与整体调度
2019/10/27 Python
Python三元运算与lambda表达式实例解析
2019/11/30 Python
从训练好的tensorflow模型中打印训练变量实例
2020/01/20 Python
使用jupyter notebook将文件保存为Markdown,HTML等文件格式
2020/04/14 Python
canvas压缩图片以及卡片制作的方法示例
2018/12/04 HTML / CSS
实现向右循环移位
2014/07/31 面试题
财务经理的岗位职责
2013/12/17 职场文书
内业资料员岗位职责
2014/01/04 职场文书
白血病募捐倡议书
2014/05/14 职场文书
教师个人师德总结
2015/02/06 职场文书
2016元旦主持人开场白
2015/12/03 职场文书
Win11右下角图标点了没反应怎么办?Win11点击右下角图标无反应解决方法汇总
2022/07/07 数码科技