如何利用collections模块中的defaultdict来优化存储和处理多对一关系数据的效率?请结合具体实例给出代码示例。
时间: 2024-10-29 10:29:03 浏览: 16
defaultdict是Python中collections模块提供的一个高级数据结构,它能够有效解决在处理多对一关系数据时常见的键值对不存在引发的异常问题。通过设置default_factory参数,defaultdict能够在访问不存在的键时,自动创建指定类型的默认值,大大简化了数据存储和访问的过程。例如,假设我们需要统计一个文本文件中每个单词出现的次数,可以使用defaultdict配合list来实现。以下是具体的代码示例:
参考资源链接:[Python进阶:collections包详解与应用示例](https://wenku.csdn.net/doc/645b901995996c03ac2d82f5?spm=1055.2569.3001.10343)
```python
from collections import defaultdict
# 创建一个defaultdict,指定默认值为list
word_count = defaultdict(list)
# 打开文件,并逐行读取数据
with open('example.txt', 'r', encoding='utf-8') as ***
***
* 对每一行进行空格分割,得到单词列表
words = line.split()
for word in words:
# 将每个单词追加到对应键的列表中
word_count[word].append(word)
# 输出结果
for word, counts in word_count.items():
print(f
参考资源链接:[Python进阶:collections包详解与应用示例](https://wenku.csdn.net/doc/645b901995996c03ac2d82f5?spm=1055.2569.3001.10343)
阅读全文