首页 > 文章列表 > defaultdict在python中接收调用对象

defaultdict在python中接收调用对象

Python defaultdict
293 2022-08-07

1、说明

有时候为了方便起见,就算某个键在映射里不存在,我们也希望在通过这个键读取值的时候能得到一个默认值。为了达到这个目的,可以通过 defaultdict 这个类型而不是普通的 dict。

2、实例

In [7]: from collections import defaultdict
 
In [8]: res_dict= defaultdict(int)
 
In [9]: for lang in langs:
   ...:     res_dict[lang] += 1
   ...:
 
In [10]: res_dict
Out[10]:
defaultdict(int,
            {'C#': 1,
             'java': 1,
             'kotlin': 1,
             'php': 1,
             'python': 2,
             'swift': 1})
 
In [11]: res_dict['c++']
Out[11]: 0

这样就完美解决了上述所有问题, defaultdict 构造函数接收一个可调用的对象,当 __getitem__ 方法找不到值的时候就会调用该对象返回一个值。