setdefault函数的用法及理解
setdefault函数的用法及理解
dict.setdefault(key, default=None)
功能:
如果键不存在于字典中,将会添加该键并将default的值设为该键的默认值,如果键存在于字典中,将读出该键原来对应的值,default的值不会覆盖原来已经存在的键的值。
参数:
key----要查找的键
default-----查找的键不存在时用于设置的默认值
使用方法示例:(以下使用方法是我理解setdefault函数的过程)
方法一:给字典中不存在的键赋值为默认值None
>>> ExsampleDict={"Exist":"Elle"}
>>> Res=ExsampleDict.setdefault("NotExist",)
>>> print ExsampleDict
{'NotExist': None, 'Exist': 'Elle'}
方法二:读出字典中存在的键对应的值
>>> ExsampleDict={"Exist":"Elle"}
>>> Res=ExsampleDict.setdefault("Exist","NotReplace")
>>> print Res
Elle
>>> type(Res)
<type 'str'>
>>> print ExsampleDict["Exist"]
Elle
>>>
方法三:给字典中不存在的键赋值为"Replace"
>>> ExsampleDict={"Exist":"Elle"}
>>> Res=ExsampleDict.setdefault("NotExist","Replace")
>>> print Res
Replace
>>> type(Res)
<type 'str'>
>>> print ExsampleDict
{'NotExist': 'Replace', 'Exist': 'Elle'}
>>>
方法四:给字典中不存在的键赋值为列表
>>> ExsampleDict={"Exist":"Elle"}
>>> Res=ExsampleDict.setdefault("NotExist",[])
>>> print Res
[]
>>> type(Res)
<type 'list'>
>>> Res=ExsampleDict.setdefault("NotExist",[]).append("Replace")
>>> print ExsampleDict
{'NotExist': ['Replace'], 'Exist': 'Elle'}
>>>
方法五:给字典中不存在的键赋值为字典
>>> ExsampleDict={"Exist":"Elle"}
>>> ExsampleDict.setdefault("NotExist",{})
{}
>>> ExsampleDict={"Exist":"Elle"}
>>> Res=ExsampleDict.setdefault("NotExist",{})
>>> print Res
{}
>>> type(Res)
<type 'dict'>
>>> Res=ExsampleDict.setdefault("NotExist",{})["Insert"]="InsertValue"
>>> print ExsampleDict
{'NotExist': {'Insert': 'InsertValue'}, 'Exist': 'Elle'}
>>>
文字相关内容出处:https://www.cnblogs.com/elleblog/p/7533413.html
setdefault函数的用法及理解的更多相关文章
- setdefault函数的用法及个人理解
setdefault函数的用法及理解 dict.setdefault(key, default=None) 功能:如果键不存在于字典中,将会添加该键并将default的值设为该键的默认值,如果键存在于 ...
- js中bind、call、apply函数的用法
最近一直在用 js 写游戏服务器,我也接触 js 时间不长,大学的时候用 js 做过一个 H3C 的 web的项目,然后在腾讯实习的时候用 js 写过一些奇怪的程序,自己也用 js 写过几个的网站.但 ...
- 转:从编译链接过程解析static函数的用法
关于static函数的用法 就像我们熟知的那样,变量可以分全局的和局部的,函数也可以分全局的和局部的. 比如说,在一个工程的common.h中定义了一个全局变量 int test;那么在整个工程的作用 ...
- js中bind、call、apply函数的用法 (转载)
最近看了一篇不错的有关js的文章,转载过来收藏先!!! 最近一直在用 js 写游戏服务器,我也接触 js 时间不长,大学的时候用 js 做过一个 H3C 的 web 的项目,然后在腾讯实习的时候用 j ...
- 详解php 获取文件名basename()函数的用法
PHP 中basename()函数给出一个包含有指向一个文件的全路径的字符串,此函数返回基本的文件名,本篇文章收集了关于使用PHP basename()函数获取文件名的几篇文章,希望对大家理解使用PH ...
- Oracle trunc()函数,decode()函数,substr函数,GREATEST函数,java中substring函数的用法
--Oracle trunc()函数的用法/**************日期********************/1.select trunc(sysdate) from dual --2013- ...
- CC++中sizeof函数的用法
C/C++中sizeof()函数的用法 学习C/C++有时会遇到下面的情况: 已知 char *str1="absde"; char str2[]="absde" ...
- python items和setdefault函数
items() dict = {'runoob': '菜鸟教程', 'google': 'Google 搜索'} print("Value : %s" % dict.setdefa ...
- Oracle 中 CONTAINS 函数的用法
Oracle 中 CONTAINS 函数的用法 1. 查询住址在北京的学生 SELECT student_id,student_name FROM students WHERE CONTAINS( a ...
随机推荐
- 网络编程——select介绍
一.select函数简介 select一般用在socket网络编程中,在网络编程的过程中,经常会遇到许多阻塞的函数,网络编程时使用的recv, recvfrom.connect函数都是阻塞的函数,当函 ...
- P5055 【模板】可持久化文艺平衡树 可持久化fhqtreap
P5055 [模板]可持久化文艺平衡树 链接 luogu 思路 可持久化fhq-treap套一套就行了,pushdown和split都要可持久化,但merge不用可持久.以前以为很难一直没看,就是个板 ...
- 中心极限定理(Central Limit Theorem)
中心极限定理:每次从总体中抽取容量为n的简单随机样本,这样抽取很多次后,如果样本容量很大,样本均值的抽样分布近似服从正态分布(期望为 ,标准差为 ). (注:总体数据需独立同分布) 那么样本容量n应 ...
- 洛谷/Codeforces CF865D 题解
若想要深入学习反悔贪心,传送门. Description: 已知接下来 \(n\) 天的股票价格,每天可以买入当天的股票,卖出已有的股票,或者什么都不做,求 \(n\) 天之后最大的利润. Metho ...
- 第08组 Alpha冲刺(4/6)
队名:955 组长博客:https://www.cnblogs.com/cclong/p/11882079.html 作业博客:https://edu.cnblogs.com/campus/fzu/S ...
- Centos 或者 Redhat修改系统时间
使用Redhat,打开电脑,系统时间比本地时间快一个小时 直接敲命令:date -s "2019-4-2 09:14:00"是立即生效了,但是重启后,系统时间还是原来的. 修改了其 ...
- 【Beta】Scrum Meeting 9 & 助教参会记录
目录 前言 任务分配 燃尽图 会议照片 签入记录 上周助教交流总结 Q:项目进度如何? Q:有关commit与issue关联的问题? Q:人员变动后分工的变化情况? Q:接下来还有什么新功能? Q:大 ...
- Cesium原理篇:GroundPrimitive【转】
今天来看看GroundPrimitive,选择GroundPrimitive有三个目的:1 了解GroundPrimitive和Primitive的区别和关系 2 createGeometry的特殊处 ...
- wikiquote
發現了一個很好玩的網站wikiquote,上面有很多引用的句子 比如關於編程語言的說法 https://en.m.wikiquote.org/wiki/Category:Programming_lan ...
- [转]跨域问题(CORS / Access-Control-Allow-Origin)
原文链接:https://blog.csdn.net/xcbeyond/article/details/84453832 1.前言 最近在项目中,调用Eureka REST接口时,出现了CORS跨越问 ...