概述
defaultdict是python 自带库collection中的方法
主要用于初始化声明字典的数据类型;
避免重复进行字典中的数据类型声明。
该函数返回一个类似字典的对象。defaultdict是Python内建字典类(dict)的一个子类,它重写了方法missing(key),增加了一个可写的实例变量default_factory,实例变量default_factory被missing()方法使用,如果该变量存在,则用以初始化构造器,如果没有,则为None。其它的功能和dict一样。
第一个参数为default_factory属性提供初始值,默认为None;其余参数包括关键字参数(keyword arguments)的用法,和dict构造器用法一样。
以leetcode第49题为例,展示一个defaultdict的实际使用案例。
用字典来存储结果
引入了defaultdict,避免每次重复声明value的数据类型,本题设置为list
最后把dict.values()输出
from collections import defaultdict
class Solution:
def groupAnagrams(self, strs: List[str]) -> List[List[str]]:
res = []
if not strs:return []
else:
dic = defaultdict(list)
for item in strs:
temp = ''.join(sorted(item))
if temp not in dic:
dic[temp].append(item)
else:
dic[temp].append(item)
return list(dic.values())