点击上方“Python小白集训营”,选“星标”公众号
重磅干货,第一时间送达
图 | Pexels
日期 | 2021.1.4
今天我们的百日计划中解释到了字典对象,这是与数字、字符串、列表、元组并列为五大基本数据结构。
字典中的元素往往通过键来存取,而不是像列表那样,通过偏移进行存取。
以下为字典中的Pythonic用法,已经为大家整理完毕。
1.使用in/not in 检查key是否存在于字典
想要知道某个key,到底有没有存在于某个字典中时,初学者首先使用的方法往往是以列表形式将字典所有键返回,在这个基础上,判断Key是否存在于键列表中,如图所示:
而更Pythonic的使用方式为,利用“in”关键字来判断Key是否存在于字典中,如图所示:
2.使用setdefault()初始化字典键值
大部分人再使用字典时都会碰到一种情况,就是在应用场景下,动态更新字典。
如图所示,假设Key没有存在于Dictionary中时,就要在这行代码中添加它,并把它对应的值初始为空列表[],借着把元素append添加到空列表中。
按正常逻辑走,这段代码不存在任何错误,但是我们可以使用setdefault来实现更Pythonic的编辑方式,见下图:
在调用satdefalt时,字典会先行检查,是否存在Key,如果存在该方法啥都不做的话,它就会自动创建一个Key,即使setdefault不存在的情况下,并把第二个参数[]作为Key的一个对应值。
3.使用defaultdict()初始化字典
如果在初始情况下,想要所有Key对应的值都是某个默认的初始值时,就要把字典进行初始化,好比有一批用户,它的初始信用积分在100,现在想要给a用户增加10分,代码如下:
再用更Pythonic的方法操作一下:
defaultdict位于collections模块下,它是dict模块的子类,那它的语法结构便是:
首先,我们的default_factory是一个工厂方法,当某个键被初始化时,将会被自动调用。
而其中的value就是default_factory返回时候的值,剩下的参数与dict()函数接受的参数一致。
以上就是今日分享的字典对象Pythonic的实现方式,如果我写的内容对大家有所帮助,还请大家花1秒时间点个在看,让更多的人知道你在为自己的未来,拼尽全力。
祝你学有所成。
-END-
长按关注,领取更多干货