【发布时间】:2021-06-15 15:43:41
【问题描述】:
我看到有人使用defaultdict(set) 来解决从集合中导入的问题,但这是顺便说一句,所以我没有完全看问题。我知道如果您执行defaultdict(int),那么字典中尚未包含的每个实例都会默认为 0。这很有用,因为您在添加到字典时不必使用 if/else 语句。但是,通过参数传递set 有什么作用?它可以服务于什么可能的目的,是否仅意味着仅将值添加到字典中(如果字典尚不存在)?
【问题讨论】:
-
鉴于您知道
defaultdict(int)做了什么,这只是一小步;每个不在字典中的实例(实际上是当您尝试访问缺少的 key 时)默认为set()(一个空集)而不是int()(0,因为你'已经看过了)。 -
您查看过
defaultdict的文档吗?您传递的任何内容都用作默认值的工厂函数。所以int() == 0和set()返回一个空集...
标签: python collections