defaultdict dict
时间: 2023-08-14 16:11:26 浏览: 166
Python dict和defaultdict使用实例解析
`defaultdict`是Python中的一个数据结构,它是`dict`的一个子类。与普通的字典不同,`defaultdict`在使用不存在的键访问值时不会引发`KeyError`异常,而是返回一个默认值。
在创建`defaultdict`时,需要传入一个可调用对象作为默认值的生成函数。当试图访问一个不存在的键时,该函数会被调用,生成一个默认值并将其作为该键的值返回。
下面是一个示例,使用`defaultdict`计算一个字符串中每个字符出现的次数:
```python
from collections import defaultdict
s = "hello world"
char_count = defaultdict(int)
for char in s:
char_count[char] += 1
print(char_count)
```
输出:
```
defaultdict(<class 'int'>, {'h': 1, 'e': 1, 'l': 3, 'o': 2, ' ': 1, 'w': 1, 'r': 1, 'd': 1})
```
在上述示例中,`defaultdict(int)`创建了一个`defaultdict`对象,其默认值为0。在遍历字符串时,每个字符都被当做键来访问`char_count`字典。如果键不存在,则会调用默认值生成函数`int()`,返回0,并将其作为该键的值。如果键已存在,则对应的值递增1。
这样就可以方便地统计字符串中每个字符出现的次数,而无需手动处理键不存在的情况。
阅读全文