目录
本文转自微信公众号:"算法与编程之美",

一、问题描述
在collections模块中的defauldict使用时与dict有何不同,为何我们用dict中的key值不存在时会报错,而defaudict不会报错,下面做出解答。
二、解决方案
以解决遇到的问题用来解答。
代码示例:
import collections
//引用collections模块
dic=collections.defaultdict(int)
//利用模块中的defauldict定义一个字典
for num in range(10):
dic[num]+=1
//给字典赋值
print(dic)
输出:
defaultdict(<class 'int'>, {0: 1, 1: 1, 2: 1, 3: 1, 4: 1, 5: 1, 6: 1, 7: 1, 8: 1, 9: 1})
从代码中可以看出引用了collections模块中的defauldict()属性,定义了一个字典,并为字典赋值以及增添了key值。可以看出最初dic没有key值时,字典返回的值为1;同理如果直接用dict会产生什么结果呢?
代码示例:
dic=dict()
//定义一个字典
for num in range(10):
dic[num]+=1
//赋值
print(dic)
输出:
发生异常: KeyError
0
File "C:\Users\Hasee\Desktop\where2go-python-test\1906101031王卓越\类\ce_shi.py", line 81, in <module> dic[num]+=1
然而输出会出现报错,该错误是因为在dic()中找不到相应的key值,即在所定义的dic中找不到num值,但利用if条件语句也可以达到与defaultdict()一样的效果。
代码示例:
dic=dict()
for num in range(10):
if num not in dic:
dic[num]=0
//当dic中不存在num这个key值时,就添加num并赋值为0
dic[num]+=1
print(dic)
输出:
{0: 1, 1: 1, 2: 1, 3: 1, 4: 1, 5: 1, 6: 1, 7: 1, 8: 1, 9: 1}
三、结语
通过上述代码及结果,得知当定义一个字典没有相应的key值时,defauldict()会在字典中添加这个key值并赋值为0,而直接使用dict()来定义则会报错:找不到相应的key值。但使用if语句来主动为key赋值,也能达到defaultdict()一样的效果。
相关推荐:
在线AI文章生成:内容创作新革命
AI智能时代的到来:如何利用人工智能推动生活与商业创新,ai相册下载
seo需要什么能力,seo需要哪些技术 ,ai长条弯曲
为什么越来越多的人选择在知乎发布文章?这里面的机会你可能还没发现!,潍坊关键词排名提升
文章AI生成:让创作变得更简单、更高效!
seo网站反链是什么,网站反链怎么做 ,ai插画头像卡通
SEO快速提升:让你的网站排名瞬间飙升的秘诀,网站建设的发展目标
AI做文章:引领智能创作的未来
AI免费工具:提升效率与创意的秘密武器
SEO做网站点击:提升网站流量的关键策略,国内ai写作论文
seo用什么写属性写,seo属于什么 ,芭田科学施肥AI
文章自动生成AI:助力写作新时代,让创作更高效
什么是seo平台seo教程,什么是 seoseo有何价值 ,论文写作ai助手公众号
优化*:打造更加高效、创新的娱乐体验,石排网站建设制作多少钱
seo软件叫什么,seo软件视频教程 ,eps ai 缩略图
ChatGPT进不去怎么办?解决方案与技巧,轻松畅享智能对话,ai va
SEO分类:从基础到进阶,全面解析SEO优化的关键要素,新建设网站排名
seo竞价做的什么工作,seo 竞价 ,office智能ai
seo需要干什么,seo需要具备什么知识 ,ai梦境档案世岛大宅
今时CMS:引领数字化转型的智慧之选,河南seo优化网站联系方式
互联网时代的“搜索截流”新玩法:如何抓住流量红利,甘孜做优化网站软件
seo链接锚是什么,什么是锚链接,如何设置锚链接 ,保山智能AI
SEO职责:为网站注入流量,提升品牌竞争力,拼多多女装关键词排名
seo算是什么营销方式,seo是网络营销吗 ,ai318
GoogleGPT-引领未来智能对话的革命,灵境ai画质
怎么用AI润色文章,让你的文稿瞬间高大上
SEO应该如何提升网站流量与排名?揭秘成功的SEO策略,肺炎疫苗推广营销
ChatGPT为什么用不了了?背后的真相揭秘!,ai写作专家收费吗
SEO建站,开启网站优化的全新篇章!,网络营销推广合作方式
seo经验是什么,seo进阶 ,ai矿机
ChatGPT付款被拒?如何应对与解决常见支付问题,掉包ai
seo网站是什么东西,seo网站是什么东西啊 ,ai锯齿消失
ChatGPT怎么打不开了?揭秘背后的原因与解决方法,ai中打开ai文件丢失
SEO教育:搜索引擎优化,开启成功职业之路,搜狗SEO排名接单
ChatGPT宕机两小时,OpenAI紧急修复,用户期待AI恢复正常服务,oppo小布ai
ChatGPT无法加载?检查网络并尝试重启,助您快速恢复畅通体验,burj ai
seo适合什么人做,哪种seo做得好 ,晋城ai论文写作免费
人工AI软件的未来:智能时代的创新驱动力
用AI修改文章,提升写作效率与质量的新时代
ChatGPT无法打开?这些解决办法让你重新畅享智能对话!,北大写作ai
AI自动化:开启智能未来的无限可能,simplify ai
SEO查看-如何通过精确分析提升网站流量与排名,东丽网站建设价格
创作新时代:自动生成文章AI的魅力与未来
ChatGPT的诞生,预示着人工智能大规模应用的时代已经来临,ai此生不渝
ChatGPT空白对话:释放创意,开启智能对话的新世界,ai重庆南坪
SEO外,如何提升网站整体营销效果?,文轩网络营销推广方案
ChatGPT桌面应用安装了,不能用?解决方案全攻略,让你轻松畅享AI助手!,绫波丽ai智能
打破创作边界,无限可能无限制生成文章的AI
ChatGLM不能搜索网页内容,你真的了解它的局限性吗?,ai修复情侣
seo要什么条件,seo都需要做什么 ,交互ai求职