在Python中使用defaultdict初始化字典以及应用方法
作者:grey_csdn 发布时间:2021-01-05 02:03:02
标签:Python,defaultdict
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都是其出现的次数。
来源:https://blog.csdn.net/grey_csdn/article/details/66528109


猜你喜欢
- 单下划线与双下划线在 python 中,会看到 _xx, xx 以及 __xx 这样的变量或者函数名,在这里做一个简要的总结。_xx:保护(
- 本文实例讲述了golang简单获取上传文件大小的方法。分享给大家供大家参考,具体如下:package mainimport ( &
- 谈到“登录”,大多数人脑海中会立刻浮现出那个“两小框:一用户名,一密码,外加一按钮”的经典豆腐块, 这样的功能模块在互联网上屡见不鲜, 成为
- 安装方法:Windows:在终端输入命令:pip install scrapy;mac:在终端输入命令:pip3 install scrap
- 前言观前提醒:因为是代码控制统计,所以操作每一个步骤都很重要,否则就会报错。操作步骤1.将在线编辑文档导入本地。为了方便代码处理,将导出的e
- 应原书编辑要求,先在文章顶部给出链接:《Everything You Know About CSS Is Wrong》http://www.
- 我用的数据库是Access2000的,系统为Win2000 Advance Server.今天在程序调试中遇到了以下几个怪现象:1.如果Ac
- 在安装mha4mysql时,大概步骤是:解压,perl Makefile.PL,make, make install。在执行 perl Ma
- 1. 简介有些时候在项目中,使用配置文件来配置一些灵活的参数是比较常见的事,因为这会使得代码的维护变得更方便。而ini配置文件是比较常用的一
- 一、配置抓包工具1.安装软件本文选择的抓包工具:Fiddler 具体的下载安装这里不详细赘述!(网上搜Fiddler安
- 本文实例为大家分享了JS实现九宫格抽奖的具体代码,供大家参考,具体内容如下上代码:<div class="wrapper&q
- 一、QtDesigner介绍Qt Designer 是一款GUI界面工具,可以实现将UI设计界面转为Python代码的工具;二、安装 QTd
- 系列教程MySQL系列之开篇 MySQL关系型数据库基础概念 MySQL系列之一 MariaDB-server安装 MySQL系列之二 多实
- 本文所述实例为Python处理文本文件并生成指定格式文件的方法,具体实现功能代码如下所示:import osimport sysimport
- 一、桌面应用软件桌面应用软件是基于GUI(Graphical User Interface,图形用户界面)交互式程序,需要实现GUI库实现前
- Django中提供了“信号调度”,用于在框架执行操作时解耦。通俗来讲,就是一些动作发生的时候,信号允许特定的发送者去提醒一些接受者。Djan
- 如果需要在查询语句返回的列中包含一列表示该条记录在整个结果集中的行号, ISO SQL:2003 标准提出的方法是提供 ROW_NUMBER
- js部分setInterval("time_controller()",1000);function time_cont
- 对于MySQL数据库,如果你要使用事务以及行级锁就必须使用INNODB引擎。如果你要使用全文索引,那必须使用myisam。 INNODB的实
- <?php function CreateShtml() { ob_start(&quo