Defaultdict 与常规字典:了解区别
Python 的内置字典是存储键值对的基本数据结构。然而,defaultdict 类型提供了一个独特的功能,使其与常规词典区分开来。
关键区别:抑制 KeyError 异常
当访问一个不存在的键时常规字典,你会遇到 KeyError 异常。相比之下,defaultdicts 提供了一种通过自动为丢失的键创建默认条目来优雅地处理此类情况的方法。
创建默认项
控制默认值的类型创建项目后,您指定一个“可调用”对象作为 defaultdict 构造函数的参数。例如,Python 文档中的两个示例:
默认项目创建示例:
考虑以下代码片段:
import collections # Create a defaultdict with initial values set to 0 s = 'mississippi' d = collections.defaultdict(int) for char in s: d[char] += 1 print(d) # Output: {'m': 1, 'i': 4, 's': 4, 'p': 2} # Create a defaultdict with initial values as empty lists colors = [('yellow', 1), ('blue', 2), ('yellow', 3), ('blue', 4), ('red', 1)] d = collections.defaultdict(list) for color, count in colors: d[color].append(count) print(d) # Output: {'blue': [2, 4], 'red': [1], 'yellow': [1, 3]}
通过了解 defaultdict 之间的差异和常规字典,您可以利用 defaultdict 的能力在 Python 中有效处理丢失的键应用程序。
以上是Defaultdict 与常规词典:什么时候应该使用'defaultdict”?的详细内容。更多信息请关注PHP中文网其他相关文章!