在Python中,字典(Dictionary)类型是一个mapping mutable的数据类型,这个对象有一个函数,setdefault。

dict.setdefault(key, default=None)

setdefault从字面含义上来看,就是设置默认值的意思,但是此函数并不能真正改变已经存在的key对应的value。

>>>

>>> ddd = {}

>>> ddd.setdefault('a',1)

1

>>> ddd.setdefault('a',2)

1

>>> ddd

{'a': 1}

>>>

key='a'一开始不存在,使用setdefault函数将'a'的默认值设置为1,然后再次调用setdefault函数,并不能改变'a'的默认值。

在setdefault函数使用时,如果不指定value,默认的value就是None(None在Python中也是一个对象,记住Python中一切都是对象,Python支持动态类型变换)。

>>>

>>> ddd.setdefault('b')

>>> ddd

{'a': 1, 'b': None}

>>> ddd.setdefault('b',2)

>>> ddd

{'a': 1, 'b': None}

>>>

由此可以看出,setdefault函数的设计思想,设置key对应的默认值,如果key存在,key对应的value不会被改变,而且函数总是返回key的默认值。

在setdefault之后,dict类型的对象就有了index(key),然后就可以直接通过index来修改对应的value。或者直接通过index(key),可以增加dict对象中的key-value pairs。

>>>

>>> dt = {}

>>> dt['a']=1

>>> dt['b']=1

>>> dt['c']=1

>>> dt

{'a': 1, 'b': 1, 'c': 1}

>>>

在只知道key,还不知道value的时候,可以使用setdefault来设置key,默认key对应的value是None。或者直接这样:

>>>

>>> dg = {}

>>> dg['abc']=None

>>>

python setdefault函数_Python字典(Dictionary)setdefault()函数理解相关推荐

  1. python中字典的常用函数_Python字典dict常用方法函数实例

    dict={'name':'Joe','age':18,'height':60} clear,清空 dict.clear() #运行结果{} pop,移除指定key的键值对并返回vlaue(如果没有该 ...

  2. python汉语词典_Python 字典(Dictionary)

    Python 字典(Dictionary) 字典是另一种可变容器模型,且可存储任意类型对象. 字典的每个键值(key=>value)对用冒号(:)分割,每个对之间用逗号(,)分割,整个字典包括在 ...

  3. python编程词典_Python 字典(Dictionary)操作详解

    Python字典是另一种可变容器模型,且可存储任意类型对象,如字符串.数字.元组等其他容器模型. 一.创建字典 字典由键和对应值成对组成.字典也被称作关联数组或哈希表.基本语法如下: dict = { ...

  4. [转载] python单词词典_Python 字典(Dictionary)

    参考链接: Python字典dictionary clear方法 Python 字典(Dictionary) 字典是另一种可变容器模型,且可存储任意类型对象. 字典的每个键值(key=>valu ...

  5. [转载] python cmp函数比较字典_Python 字典(Dictionary) cmp()方法

    参考链接: Python cmp方法 Python 字典(Dictionary) cmp()方法 描述 Python 字典(Dictionary) cmp() 函数比较两个字典元素. 语法 cmp() ...

  6. python中len字典_Python 字典(Dictionary) len()方法

    Python 字典(Dictionary) len()方法 描述 Python 字典(Dictionary) len() 函数计算字典元素个数,即键的总数.高佣联盟 www.cgewang.com 语 ...

  7. python字典经典例题_python 字典(Dictionary)的一些内置函数和经典例题

    字典是另一种可变容器模型,且可存储任意类型对象. 字典的每个键值 key=>value 对用冒号 : 分割,每个键值对之间用逗号 , 分割,整个字典包括在花括号 {} 中 修改字典 向字典添加新 ...

  8. Python 字典(Dictionary) setdefault()方法

    描述 Python 字典 setdefault() 函数和 get()方法 类似, 如果键不存在于字典中,将会添加键并将值设为默认值. 语法 setdefault() 方法语法: dict.setde ...

  9. python 字典代码_Python 字典(Dictionary)

    Python 字典(Dictionary) 字典是另一种可变容器模型,且可存储任意类型对象. 字典的每个键值 key=>value 对用冒号 : 分割,每个键值对之间用逗号 , 分割,整个字典包 ...

  10. python输入文字、成为字典_Python 字典(Dictionary)操作详解

    一.创建字典 字典由键和对应值成对组成.字典也被称作关联数组或哈希表.基本语法如下: dict = {'Alice': '2341', 'Beth': '9102', 'Cecil': '3258'} ...

最新文章

  1. CStatic 控件设置文本,不能重回问题
  2. 谷歌发表“移动AR设计的最佳做法”
  3. 常用代码整理(重要)
  4. 力扣刷题【20,21,26,27,35】
  5. Hadoop集群安装(真分布式)
  6. 销售系统软件mysql_Max(TM)销售管理系统
  7. git 小乌龟 配置_Git-Bash和TortoiseGit小乌龟客户端配置记录
  8. CSE lab7 RPC 攻略
  9. Java中condition的用法_java5 Condition用法--实现线程间的通信
  10. Mac 常用快捷键与操作
  11. Tomcat9的安装和配置
  12. QDUOJ 93 - 分辣条(01背包)
  13. 在Unity中实现基于粒子的水模拟(三:混合屏幕)
  14. UIImageView视图内容按比例缩小并淅淅隐去
  15. 如何开一场高效的迭代排期会 | 敏捷开发落地指南
  16. fdisk和parted对磁盘的分区总结
  17. 【外贸】英文缩写(包装信息、日常沟通邮件)
  18. L2-1 盲盒包装流水线 (25 分)
  19. Android动态权限详解
  20. 【python基础系列】实现图片分割

热门文章

  1. ROS 日志消息(C++)
  2. Python3.6全栈开发实例[022]
  3. Spring.profile实现开发、测试和生产环境的配置和切换
  4. XMLHttpRequest.responseType
  5. 机械表小案例之transform的应用
  6. 支付宝玉伯:我心目中的优秀API
  7. 各大杀软免费救急光盘合集——这个可以收藏备用了
  8. 与IDE相关的Attribute属性(C#)
  9. VMware 安装 CentOS 7
  10. 计算机网络的结构之Internet结构