在Python中使用defaultdict初始化字典以及应用方法


Posted in Python onOctober 31, 2018

Python中可以使用collections中的defaultdict类实现创建进行统一初始化的字典。这里总结两种常用一点的初始化方式,分别是初始化为list和int。

初始化为list示范代码:

#!/usr/bin/python
 
from collectionsimport defaultdict
 
s = [('yellow',1), ('blue', 2), ('yellow', 3), ('blue', 4), ('red', 1)]
d =defaultdict(list)
for k,v in s:
d[k].append(v)
print(d.items()

运行结果如下:

E:\WorkSpace\05_数据分析\01_利用Python进行数据分析\第02章_引言>pythondict_init.py

[('blue', [2, 4]),('red', [1]), ('yellow', [1, 3])]

从上面的结果可以看出,这种初始化功能非常适合用于统计几个key出现过那几个value。而第二种初始化为int的方式则与此不同,它适合实现的不是统计key的所有value,而是统计一个key出现过多少次。

示范代码如下:

from collectionsimport defaultdict
 
s = 'mississippi'
d =defaultdict(int)
for k in s:
d[k] += 1
print(d.items())

运行结果如下:

E:\WorkSpace\05_数据分析\01_利用Python进行数据分析\第02章_引言>pythondict_int_int.py
[('i', 4), ('p',2), ('s', 4), ('m', 1)]

如上结果中,每个字典的key对应的value都是其出现的次数。

以上这篇在Python中使用defaultdict初始化字典以及应用方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python中functools模块函数解析
Mar 12 Python
详解Python多线程Selenium跨浏览器测试
Apr 01 Python
python+pandas生成指定日期和重采样的方法
Apr 11 Python
Python 解决中文写入Excel时抛异常的问题
May 03 Python
python多行字符串拼接使用小括号的方法
Mar 19 Python
selenium + python 获取table数据的示例讲解
Oct 13 Python
python 定时器每天就执行一次的实现代码
Aug 14 Python
ansible动态Inventory主机清单配置遇到的坑
Jan 19 Python
Python实现链表反转的方法分析【迭代法与递归法】
Feb 22 Python
python+selenium+PhantomJS抓取网页动态加载内容
Feb 25 Python
浅谈keras通过model.fit_generator训练模型(节省内存)
Jun 17 Python
详解pycharm配置python解释器的问题
Oct 15 Python
在ubuntu16.04中将python3设置为默认的命令写法
Oct 31 #Python
设置python3为默认python的方法
Oct 31 #Python
在双python下设置python3为默认的方法
Oct 31 #Python
利用Python将文本中的中英文分离方法
Oct 31 #Python
python list格式数据excel导出方法
Oct 31 #Python
解决pyinstaller打包exe文件出现命令窗口一闪而过的问题
Oct 31 #Python
Selenium定时刷新网页的实现代码
Oct 31 #Python
You might like
Javascript基础教程之函数对象和属性
2015/01/18 Javascript
全面解析Bootstrap中tooltip、popover的使用方法
2016/06/13 Javascript
AngularJs ng-repeat 嵌套如何获取外层$index
2016/09/21 Javascript
使用base64对图片的二进制进行编码并用ajax进行显示
2017/01/03 Javascript
基于jQuery制作小图标上下滑动特效
2017/01/18 Javascript
Angular 4.x 动态创建表单实例
2017/04/25 Javascript
boostrap模态框二次弹出清空原有内容的方法
2018/08/10 Javascript
微信小程序访问豆瓣电影api的实现方法
2019/03/31 Javascript
vue实现todolist功能、todolist组件拆分及todolist的删除功能
2019/04/11 Javascript
vue2 v-model/v-text 中使用过滤器的方法示例
2019/05/09 Javascript
用 js 写一个 js 解释器过程详解
2019/08/02 Javascript
element-ui点击查看大图的方法示例
2020/12/14 Javascript
Python的Flask框架中SQLAlchemy使用时的乱码问题解决
2015/11/07 Python
Python实现的微信好友数据分析功能示例
2018/06/21 Python
Python Socket编程之多线程聊天室
2018/07/28 Python
python web自制框架之接受url传递过来的参数实例
2018/12/17 Python
通过python实现弹窗广告拦截过程详解
2019/07/10 Python
Pandas数据离散化原理及实例解析
2019/11/16 Python
Python Numpy 自然数填充数组的实现
2019/11/28 Python
Python基础类继承重写实现原理解析
2020/04/03 Python
Keras—embedding嵌入层的用法详解
2020/06/10 Python
Django 权限管理(permissions)与用户组(group)详解
2020/11/30 Python
Python urlopen()参数代码示例解析
2020/12/10 Python
CSS3与动画有关的属性transition、animation、transform对比(史上最全版)
2017/08/18 HTML / CSS
解析HTML5的存储功能和web SQL的相关操作方法
2016/02/19 HTML / CSS
美国台面电器和厨具品牌:KitchenAid
2019/04/12 全球购物
POS解决方案:MUNBYN(热敏打印机、条形码扫描仪)
2020/06/09 全球购物
技术人员面试提纲
2013/11/28 职场文书
活动总结新闻稿
2014/08/30 职场文书
公共艺术专业自荐信
2014/09/01 职场文书
刑事辩护授权委托书
2014/09/13 职场文书
党的群众路线教育实践活动制度建设计划方案
2014/10/31 职场文书
写给老师的感谢信
2015/01/20 职场文书
创业计划书之川味火锅店
2019/09/02 职场文书
golang 实现对Map进行键值自定义排序
2021/04/28 Golang
Java SSH 秘钥连接mysql数据库的方法
2021/06/28 Java/Android