python setdefault函数_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 setdefault函数_python 字典 setdefault()和get()方法比较详解相关推荐
- python des解密_python实现DES加密解密方法实例详解
本文实例讲述了python实现DES加密解密方法.分享给大家供大家参考.具体分析如下: 实现功能:加密中文等字符串 密钥与明文可以不等长 这里只贴代码,加密过程可以自己百度,此处python代码没有优 ...
- python中列表的sort方法_python中列表的sort方法使用详解
内容简介:python中列表的sort方法使用详解 一.基本形式 列表有自己的sort方法,其对列表进行原址排序,既然是原址排序,那显然元组不可能拥有这种方法,因为元组是不可修改的. 排序,数字.字符 ...
- Python字典的11个方法超级详解
Python字典是一种可变容器模型,且可存储任意类型对象,如字符串.数字.元组等其他容器模型. print(dir(dict)) ['clear', 'copy', 'fromkeys', 'get' ...
- 【Python入门】Python字典的11个方法超级详解
Python字典是一种可变容器模型,且可存储任意类型对象,如字符串.数字.元组等其他容器模型. print(dir(dict)) ['clear', 'copy', 'fromkeys', 'get' ...
- python多元非线性回归_Python利用神经网络解决非线性回归问题实例详解
本文实例讲述了Python利用神经网络解决非线性回归问题.分享给大家供大家参考,具体如下: 问题描述 现在我们通常使用神经网络进行分类,但是有时我们也会进行回归分析. 如本文的问题: 我们知道一个生物 ...
- python可变参数_Python 的四种共享传参详解
点击上方"Python数据之道",选择"星标公众号" 精品文章,第一时间送达 作者 | 杨仁聪 编辑 | Lemon 出品 | Python数据之道 本文来自公 ...
- Python open()函数文件打开、读、写操作详解
python的文件读写和打开操作都有自己特定的函数和方法,操作起来很简单.下面就来简单的了解下python文件的基本操作方法有哪些. 一.Python open()函数文件打开操作 打开文件会用到op ...
- python place布局_Python TKinter布局管理Place()Grid Pack详解
Tkinter是Python标准GUI工具包,有三种布局管理方式: pack grid place 这三种布局管理在同一个 master window 里是不可以混用的. 下面通过三示例,详解使用参数 ...
- python布局管理_Python基础=== Tkinter Grid布局管理器详解
本文转自:https://www.cnblogs.com/ruo-li-suo-yi/p/7425307.html @ 箬笠蓑衣 Grid(网格)布局管理器会将控件放置到一个二维的表 ...
最新文章
- 专访NIPS主席:如何保证论⽂评审的公平性?| 人物志
- 深入理解nodejs中的异步编程
- python操作hive数据库代码_Python连接Hive操作数据库
- k8s核心技术-Controller(statefulSet)_部署有状态应用---K8S_Google工作笔记0033
- PyQt教程 - pythonQt的安装和配置及版本间差异
- 全网首发:终极解决办法:/usr/bin/ld: libcc.so: no symbol version section for versioned symbol `memcpy@GLIBC_2.0‘
- docker网络模式--资源分配叙述(1)
- 概率论排列公式和组合公式实质 压强 : 压力=ps=压强*面积; 万有引力公式:
- logback 多实例 归档问题 无法自动删除.tmp文件问题
- python中e怎么计算_Python之循环结构——实战计算自然底数e,圆周率Π
- 使用Java做ORC图片识别
- gitlab服务器代码存储位置,gitlab仓库存储位置的修改方法
- 炒股流程|开户流程|如何炒股
- autodesk(欧特克)CAD发展简史
- 【DIRECTX状态详解】
- 鸡和兔关在一个笼子里,鸡有2只脚,兔有4只脚,没有例外。已知现在可以看到笼子里m个头和n只脚,求鸡和兔子各有多少只?(输出一组数据)
- 吴京砸向MOSS的伏特加,被做成了串口助手
- 6-1 计算年year、月month和日day对应的是该年的第几天
- 毕业设计 stm32酒驾检测系统 - 单片机 嵌入式 物联网
- linux百度贴吧自动顶贴,[启动器]Hello Minecraft! Launcher 2 - Win/Mac/Linux
热门文章
- Ubuntu Server 13.04安装图形界面
- CSS3.0_选择器_学习笔记
- OpenCv2 学习笔记(1) Mat创建、复制、释放
- fastjson jar包_Fastjsonlt;=1.2.47反序列化RCE漏洞(CNVD201922238)
- 剑指offer(15)反转链表
- oracle 处理过程,Oracle SQL语句处理过程(转载)
- Android开发之EditText无法获取光标的问题
- 多个点 最远距离 java_世界上最远的距离
- java 反向映射,如何使用lambdas實現反向映射Java?
- python spark视频_Spark2.x+Python大数据机器学习视频课程