文章目录

  • 传统字典使用
  • 使用setdefault
  • 使用defaultdict

传统字典使用

统计某个单词出现次数


lst1 = ['这', '是', '一', '段', '话', '一', '段', '话']
rst = dict()
for word in lst1:if word not in rst:rst[word] = 1else:rst[word] += 1print('rst = ', rst)


这是传统方法。

使用setdefault


for word in lst1:rst.setdefault(word, 0)rst[word] += 1print('rst = ', rst)

给没有向字典里面添加的key设为0。

使用defaultdict


from collections import defaultdict
rst1 = defaultdict(int)
for word in lst1:rst1[word] += 1
print('rst = ', rst1)

因为defaultdict(int)的参数是int,所以如果添加不存在的key,value会默认给0;

另一种使用方式:


def dictVal():return {'name': "", 'age': 0}rst2 = defaultdict(dictVal)
print('''rst2['123'] = ''', rst2['123'])

设置了默认值以后,添加不存在的key,可以使用预设的值返回。这样就能实现一些复杂的字典。
这里定义了dictVal函数,给dict设置默认值是dictVal函数的返回值。
所以运行结果:

python学习-defaultdict相关推荐

  1. Python中defaultdict函数的使用方法

    Python的字典是否有默认值? 众所周知,在Python中如果访问字典中不存在的键,会引发KeyError异常(JavaScript中如果对象中不存在某个属性,则返回undefined).但是有时候 ...

  2. Python学习基础必备知识点:字典dict详解

    取键值 1.Python 字典 setdefault() 方法和 get() 方法类似,返回指定键的值,如果键不在字典中,将会添加键并将值设置为一个指定值,默认为None. get() 和 setde ...

  3. Python学习笔记:常用内建模块2:collections

    前言 最近在学习深度学习,已经跑出了几个模型,但Pyhton的基础不够扎实,因此,开始补习Python了,大家都推荐廖雪峰的课程,因此,开始了学习,但光学有没有用,还要和大家讨论一下,因此,写下这些帖 ...

  4. python学习--关注容易被忽略的知识点---(一)python基础

    本系列文章回顾了 python大部分关键的知识点,关注那些容易被忽略的知识点.适用于有一定python基础的python学习者. 本系列文章主要参考廖雪峰的python学习网站.该学习网站内容全面,通 ...

  5. 【Python学习教程】数据结构与算法

    前言 python内置的数据结构包括:列表(list).集合(set).字典(dictionary),一般情况下我们可以直接使用这些数据结构,但通常我们还需要考虑比如搜索.排序.排列以及赛选等一些常见 ...

  6. python学习之路:python连接阿里云ODPS

    python学习之路:python连接阿里云ODPS 前言 本人最近在学习使用ODPS,希望把学习过程记录下来,方便自己查阅. 1.安装ODPS pip install ODPS 2.连接阿里云odp ...

  7. python学习指南—Python 进阶(Python Cookbook)

    系列文章目录 Python数据科学家养成计划(Python学习指南) 文章目录 系列文章目录 前言 一.数据结构和算法 1. 将序列分解为单独的变量 2. 从任意长度的可迭代对象中分解元素 3. 保留 ...

  8. Python工程师具备哪些技能才能提升求职机率(附Python学习线路图)

    对于新人而言,无论学习什么技术,都要以鼓励的姿态出现.如果只是一味地用薪水和个人所看到的局限性现状去衡量一门技术,那绝对是欠缺眼光的.作为一名Python工程师,究竟具备哪些技能才能提升求职机率?今天 ...

  9. pygame是python的一个库吗,python学习pygame,,基本库导入impor

    python学习pygame,,基本库导入impor 基本库导入 import pygame import sys from pygame.locals import * 初始化 pygame.ini ...

最新文章

  1. keepalived 构建主备mysql
  2. UOJ #268 BZOJ 4732 [清华集训2016]数据交互 (树链剖分、线段树)
  3. linux 编译工具链,Linux工具链for TKStudio下载_Linux工具链for TKStudio官方下载-太平洋下载中心...
  4. RESTful API实现APP订餐实例
  5. 【待续】C#.Net 关键词清理 Fields Property Attribute Const三者之间的区别与联系
  6. java Comparable和Comaprator的对比
  7. centos7.2 开发 部署 .net core
  8. Linux虚拟内存那点事儿
  9. ceph:如何处理rados --striper上传失败的对象
  10. 使用OpenCV需要注意的小细节
  11. 关于数据库设计是否需要加入(建立)外键
  12. k-max-pooling
  13. 汽车零部件加工行业工业互联网智能工厂解决方案
  14. 荣耀热键驱动无法安装
  15. ts获取服务器数据_ts 流服务器
  16. Springboot美妆网站的设计与实现毕业设计-附源码211539
  17. Linux signal捕获
  18. 惠普服务器做linux系统安装系统教程,HP刀片服务器安装系统步骤
  19. 弘辽科技:学会正确竞品分析,与同行竞争对手抢流量
  20. IE可以上网其他浏览器上不了

热门文章

  1. 一个详尽的面向 SAP UI5 初学者的教程 - 如何在 SAP UI5 中绘制图表 Chart
  2. SAP 几款容易令初学者混淆的 HANA 解决方案
  3. Firefox开发者工具里的CSS Flexbox Inspector
  4. Angular Component 开发时属性和运行时属性的对照
  5. Spring JDBC 框架一个最简单的Hello World级别的例子
  6. build.gradle里repositories的mavenCentral实现原理解析
  7. 初步学习Prometheus的微服务监控功能
  8. 变量不同作用域的测试
  9. SAP Leonardo机器学习图片相似度打分API的测试报告
  10. CRM WebUI的错误消息是如何从后台服务器取出并绘制到前台的