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常用的日期时间处理方法示例
Feb 08 Python
Python函数参数类型*、**的区别
Apr 11 Python
python基础知识小结之集合
Nov 25 Python
python实现图片处理和特征提取详解
Nov 13 Python
微信跳一跳python自动代码解读1.0
Jan 12 Python
Python实现文件信息进行合并实例代码
Jan 17 Python
python 定义n个变量方法 (变量声明自动化)
Nov 10 Python
Python操作MySQL数据库的两种方式实例分析【pymysql和pandas】
Mar 18 Python
Python3 使用selenium插件爬取苏宁商家联系电话
Dec 23 Python
python开发一款翻译工具
Oct 10 Python
python 基于opencv 绘制图像轮廓
Dec 11 Python
Python超简单容易上手的画图工具库推荐
May 10 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数据库操作方法(MYSQL版)
2011/06/08 PHP
Smarty变量用法详解
2016/05/11 PHP
深入理解php printf() 输出格式化的字符串
2016/05/23 PHP
PHP模块化安装教程
2016/06/01 PHP
Laravel的Auth验证Token验证使用自定义Redis的例子
2019/09/30 PHP
js类后台管理菜单类-MenuSwitch
2007/09/12 Javascript
javascript 日期常用的方法
2009/11/11 Javascript
Javascript读取cookie函数代码
2010/10/16 Javascript
JavaScript版的TwoQueues缓存模型
2014/12/29 Javascript
JavaScript 基本概念
2015/01/20 Javascript
javascript实现动态加载CSS
2015/01/26 Javascript
跟我学习javascript的this关键字
2020/05/28 Javascript
基于jquery插件实现拖拽删除图片功能
2020/08/27 Javascript
jquery实现全选、不选、反选的两种方法
2016/09/06 Javascript
javascript实现用户点击数量统计
2016/12/25 Javascript
javascript 正则表达式分组、断言详解
2017/04/20 Javascript
微信小程序实现发红包功能
2018/07/11 Javascript
详解Vue.js iview实现树形权限表(可扩展表)
2018/09/30 Javascript
JS根据Unix时间戳显示发布时间是多久前【项目实测】
2019/07/10 Javascript
jQuery实现图片切换效果
2020/10/19 jQuery
简单实现python爬虫功能
2015/12/31 Python
python中的错误处理
2016/04/10 Python
python selenium 对浏览器标签页进行关闭和切换的方法
2018/05/21 Python
python hough变换检测直线的实现方法
2019/07/12 Python
在 Python 中使用 MQTT的方法
2020/08/18 Python
如何避免常见的6种HTML5错误用法
2017/11/06 HTML / CSS
什么叫做SQL注入,如何防止
2016/10/04 面试题
值传递还是引用传递
2015/02/08 面试题
给水工程专业毕业生自荐信
2014/01/28 职场文书
财务信息服务专业自荐书范文
2014/02/08 职场文书
模特职业生涯规划范文
2014/02/26 职场文书
工厂采购员岗位职责
2014/04/08 职场文书
党员对照检查材料思想汇报(党的群众路线)
2014/09/24 职场文书
迎客户欢迎词三篇
2019/09/27 职场文书
解析Redis Cluster原理
2021/06/21 Redis
Python爬虫中urllib3与urllib的区别是什么
2021/07/21 Python