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基于Tkinter实现的记事本实例
Jun 17 Python
python读写ini配置文件方法实例分析
Jun 30 Python
Python列表list操作符实例分析【标准类型操作符、切片、连接字符、列表解析、重复操作等】
Jul 24 Python
python实现二维数组的对角线遍历
Mar 02 Python
python 使用turtule绘制递归图形(螺旋、二叉树、谢尔宾斯基三角形)
May 30 Python
python实现猜数字游戏
Mar 25 Python
python实现把二维列表变为一维列表的方法分析
Oct 08 Python
python redis 批量设置过期key过程解析
Nov 26 Python
关于pytorch中全连接神经网络搭建两种模式详解
Jan 14 Python
Tensorflow tf.nn.depthwise_conv2d如何实现深度卷积的
Apr 20 Python
python爬虫请求头的使用
Dec 01 Python
python爬虫爬取图片的简单代码
Jan 18 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加入ftp扩展的解决方法
2013/02/07 PHP
ThinkPHP下表单令牌错误与解决方法分析
2017/05/20 PHP
PHP的curl函数的用法总结
2019/02/14 PHP
Yii框架中用response保存cookie,用request读取cookie的原理解析
2019/09/04 PHP
一段多浏览器的"复制到剪贴板"javascript代码
2007/03/27 Javascript
JavaScript面向对象知识串结(读JavaScript高级程序设计(第三版))
2012/07/17 Javascript
Javascript操作cookie的函数代码
2012/10/03 Javascript
浅析javascript 定时器
2014/12/23 Javascript
解决ueditor jquery javascript 取值问题
2014/12/30 Javascript
JS显示下拉列表框内全部元素的方法
2015/03/31 Javascript
jQuery实现表格行和列的动态添加与删除方法【测试可用】
2016/08/01 Javascript
jQuery在ie6下无法设置select选中的解决方法详解
2016/09/20 Javascript
纯javascript版日历控件
2016/11/24 Javascript
jQuery UI仿淘宝搜索下拉列表功能
2017/01/10 Javascript
原生js封装添加class,删除class的实例
2017/11/06 Javascript
JavaScript通过mouseover()实现图片变大效果的示例
2017/12/20 Javascript
Layui 设置select下拉框自动选中某项的方法
2018/08/14 Javascript
微信小程序蓝牙连接小票打印机实例代码详解
2019/06/03 Javascript
JavaScript中0、空字符串、'0'是true还是false的知识点分享
2019/09/16 Javascript
解决qrcode.js生成二维码时必须定义一个空div的问题
2020/07/09 Javascript
浅谈Vue开发人员的7个最好的VSCode扩展
2021/01/20 Vue.js
[49:31]DOTA2-DPC中国联赛 正赛 Elephant vs LBZS BO3 第二场 1月29日
2021/03/11 DOTA
Python运用于数据分析的简单教程
2015/03/27 Python
python制作英语翻译小工具代码实例
2019/09/09 Python
基于python实现雪花算法过程详解
2019/11/16 Python
Python sys模块常用方法解析
2020/02/20 Python
Django Admin后台模型列表页面如何添加自定义操作按钮
2020/11/11 Python
Html5插件教程之添加浏览器放大镜效果的商品橱窗
2016/01/07 HTML / CSS
全球酒店预订网站:Hotels.com
2016/08/10 全球购物
红色康乃馨酒店:Red Carnation Hotels
2017/06/22 全球购物
马来西亚和新加坡巴士票在线预订:CatchThatBus
2018/11/17 全球购物
豪华床上用品、床单和浴室必需品:Peacock Alley
2019/09/04 全球购物
创建索引时需要注意的事项
2013/05/13 面试题
北体毕业生求职信
2014/02/28 职场文书
学校计划生育责任书
2015/05/09 职场文书
大学生奶茶店创业计划书
2019/06/25 职场文书