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


Posted in Python onAugust 07, 2019

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就是什么类型。

例子:

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

一般写法:

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 相关文章推荐
python中 ? : 三元表达式的使用介绍
Oct 09 Python
python对url格式解析的方法
May 13 Python
基于python 爬虫爬到含空格的url的处理方法
May 11 Python
Python装饰器用法实例分析
Jan 14 Python
PyCharm搭建Spark开发环境实现第一个pyspark程序
Jun 13 Python
pandas 如何分割字符的实现方法
Jul 29 Python
Python Django实现layui风格+django分页功能的例子
Aug 29 Python
python scipy卷积运算的实现方法
Sep 16 Python
解决pycharm启动后总是不停的updating indices...indexing的问题
Nov 27 Python
Python实现bilibili时间长度查询的示例代码
Jan 14 Python
django 读取图片到页面实例
Mar 27 Python
解决django migrate报错ORA-02000: missing ALWAYS keyword
Jul 02 Python
与Django结合利用模型对上传图片预测的实例详解
Aug 07 #Python
如何用Python来搭建一个简单的推荐系统
Aug 07 #Python
PIL对上传到Django的图片进行处理并保存的实例
Aug 07 #Python
django 实现将本地图片存入数据库,并能显示在web上的示例
Aug 07 #Python
Python学习笔记之Django创建第一个数据库模型的方法
Aug 07 #Python
django将网络中的图片,保存成model中的ImageField的实例
Aug 07 #Python
Python学习笔记之文件的读写操作实例分析
Aug 07 #Python
You might like
在线增减.htpasswd内的用户
2006/10/09 PHP
PHP获取163、gmail、126等邮箱联系人地址【已测试2009.10.10】
2009/10/11 PHP
php网页版聊天软件实现代码
2016/08/12 PHP
laravel实现上传图片,并且制作缩略图,按照日期存放的代码
2019/10/16 PHP
在html页面上拖放移动标签
2010/01/08 Javascript
IE与Firefox在JavaScript上的7个不同句法分享
2011/10/30 Javascript
jquery统计复选框选中示例
2013/11/05 Javascript
javaScript array(数组)使用字符串作为数组下标的方法
2013/11/19 Javascript
js 左右悬浮对联广告代码示例
2014/12/12 Javascript
angularjs学习笔记之三大模块(modal,controller,view)
2015/09/26 Javascript
纯JS代码实现气泡效果
2016/05/04 Javascript
JS中sort函数排序用法实例分析
2016/06/16 Javascript
Json按某个键的值进行排序
2016/12/22 Javascript
EasyUI框架 使用Ajax提交注册信息的实现代码
2017/09/27 Javascript
Vue-cli 使用json server在本地模拟请求数据的示例代码
2017/11/02 Javascript
vue自定义指令directive实例详解
2018/01/17 Javascript
解决vue中虚拟dom,无法实时更新的问题
2018/09/15 Javascript
Node.js Buffer模块功能及常用方法实例分析
2019/01/05 Javascript
vuex页面刷新后数据丢失的方法
2019/01/17 Javascript
微信小程序wepy框架学习和使用心得详解
2019/05/24 Javascript
js模拟实现烟花特效
2020/03/10 Javascript
解决vue项目input输入框双向绑定数据不实时生效问题
2020/08/05 Javascript
python实现TCP服务器端与客户端的方法详解
2015/04/30 Python
在django中使用自定义标签实现分页功能
2017/07/04 Python
python实现12306抢票及自动邮件发送提醒付款功能
2018/03/08 Python
python基于plotly实现画饼状图代码实例
2019/12/16 Python
python温度转换华氏温度实现代码
2020/12/06 Python
如何在存储过程中使用Loop
2016/01/05 面试题
物流管理毕业生自荐信
2013/10/24 职场文书
保险专业求职信
2014/07/07 职场文书
小学趣味运动会加油稿
2014/09/25 职场文书
预备党员群众路线思想汇报2014
2014/10/25 职场文书
会计人员岗位职责
2015/02/03 职场文书
2016大学生社会实践心得体会范文
2016/01/14 职场文书
学习商务礼仪心得体会
2016/01/22 职场文书
Java 死锁解决方案
2022/05/11 Java/Android