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'}
方法二:给字典中不存在的键赋值为默认值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'}
- >>>
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 ...
随机推荐
- Jpa调用存储过程及参数
public List<Object> findAllEntityListBySearch(Long inputInfoId, int flag) throws Exception { L ...
- C# t4模版引擎笔记 引入外部dll
<#@ assembly name="D:\Documents\Downloads\Util\Util\bin\Debug\Util.dll" #> <#@ im ...
- margin: 0px auto; center 行类 块级
<html> <head> <title> biaoti </title> </head> <body style="bor ...
- Sql Server分页分段查询百万级数据四种项目实例
实际项目中需要实现自定义分页,最关键第一步就是写分页SQL语句,要求语句效率要高. 那么本文的一个查询示例是查询第100000-100050条记录,即每页50条的结果集.查询的表名为infoTab,且 ...
- 经常使用传感器协议3:CJ/T-188 冷热量表协议解析2
本文详细阐述JY公司冷热量表(记热量)传输协议.并以此说明CJ/T-188协议在厂家详细应用时,并不一致. 本文及兴许文章将对这些不同点予以总结(文中所述协议与日志"CJ/T-188 ...
- file、inode在应用层和驱动层之间的联系_转
转自:http://blog.csdn.net/dreaming_my_dreams/article/details/8272586 应用层和驱动的衔接,一直是一个老大难问题,若弄不清楚,总觉得驱动写 ...
- golang解析json
解析json,在很多语言都是很常用的,go提供了相应的包"encoding/json"来处理.直接上代码,如下: package main import ( "encod ...
- jxta 2.8x启动了
http://chaupal.github.io/ ———————————————————————————————————————————————————————————————————— 至少两个月 ...
- Linux 比较重要且难掌握命令 集合
1. find find path –option [-print] [-exec command] {} \; find . -maxdepth 1 -name aa find . -maxdept ...
- struts-config.xml 文件:
struts-config.xml配置文件是一个在Web客户端组件的视图和模型之间的联系,但你的项目的99.99就不会碰这些设置%.基本的配置文件包含以下主要内容: SN Interceptor &a ...