python 字典 setdefault()和get()方法比较详解

 更新时间:2019年08月07日 14:43:25   作者:caizhanjin  
这篇文章主要介绍了python 字典 setdefault()和get()方法比较详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

dict.setdefault(key, default=None) --> 有key获取值,否则设置 key:default,并返回default,default默认值为None

dict.get(key, default=None) --> 有key获取值,否则返回default。default默认值为None。

例子:循环迭代message字符串中每个字符,计算每个字符出现的次数

import pprint
message = "It is a good day, is not it?I mean the weather is good today." 
count1 = {}
for char in message:
 count1.setdefault(char, 0)
 count1[char] += 1 
count2 = {}
for char in message:
 count2[char] = count2.get(char, 0) + 1 
pprint.pprint(count1)
pprint.pprint(count2)

扩展:

defaultdict:属于collections 模块下的一个工厂函数,用于构建字典对象,接收一个函数(可调用)对象为作为参数。参数返回的类型是什么,key对应value就是什么类型。

例子:

一般写法:

data = [("p", 1), ("p", 2), ("p", 3),
  ("h", 1), ("h", 2), ("h", 3)]
result = {}
for (key, value) in data:
 if key not in result:
  result[key] = []
 result[key].append(value)

setdefault:

result = {}
data = [("p", 1), ("p", 2), ("p", 3),
  ("h", 1), ("h", 2), ("h", 3)]
for (key, value) in data:
 result.setdefault(key, []).append(value)

defaultdict:

from collections import defaultdict
result = defaultdict(list)
data = [("p", 1), ("p", 2), ("p", 3),
  ("h", 1), ("h", 2), ("h", 3)]
for (key, value) in data:
 result[key].append(value)

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

相关文章

  • Python NumPy教程之遍历数组详解

    Python NumPy教程之遍历数组详解

    这篇文章主要为大家详细介绍了Python NumPy中遍历数组的方法,文中的示例代码讲解详细,对我们学习Python有一定帮助,需要的可以参考一下
    2022-08-08
  • Python读取、写入txt文本内容详解

    Python读取、写入txt文本内容详解

    这篇文章主要介绍了Python读取、写入txt文本内容详解,python常用的读取文件函数有三种read()、readline()、readlines() ,今天来看一下三种函数的用法与三者的区别,需要的朋友可以参考下
    2023-08-08
  • Python django中如何使用restful框架

    Python django中如何使用restful框架

    今天给大家带来的是关于Python框架的相关知识,文章围绕着django中restful框架的使用展开,文中有非常详细的介绍及代码示例,需要的朋友可以参考下
    2021-06-06
  • Django model update的多种用法介绍

    Django model update的多种用法介绍

    Django开发过程中对表(model)的增删改查是最常用的功能之一,本文介绍笔者在使用model update过程中遇到的那些事
    2019-07-07
  • Numpy数据转换成image并保存的实现示例

    Numpy数据转换成image并保存的实现示例

    本文主要介绍了Numpy数据转换成image并保存的实现示例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-12-12
  • OpenCV实战案例之车道线识别详解

    OpenCV实战案例之车道线识别详解

    计算机视觉在自动化系统观测环境、预测该系统控制器输入值等方面起着至关重要的作用,下面这篇文章主要给大家介绍了关于OpenCV实战案例之车道线识别的相关资料,需要的朋友可以参考下
    2022-10-10
  • 浅谈python3打包与拆包在函数的应用详解

    浅谈python3打包与拆包在函数的应用详解

    这篇文章主要介绍了浅谈python3打包与拆包在函数的应用详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-05-05
  • python实现将list拼接为一个字符串

    python实现将list拼接为一个字符串

    这篇文章主要介绍了python实现将list拼接为一个字符串方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-11-11
  • Numpy之文件存取的示例代码

    Numpy之文件存取的示例代码

    这篇文章主要介绍了Numpy之文件存取的示例代码,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-08-08
  • python在地图上画比例的实例详解

    python在地图上画比例的实例详解

    在本篇文章里小编给大家整理的是一篇关于如何用python在地图上画比例的相关实例内容,有兴趣的朋友们可以学习下。
    2020-11-11

最新评论