pre:
python 生成字典能夠使用{},能夠使用dict,生成的字典在 dict[key]取值時若是key不存在會報錯python
dict =defaultdict(factory_function)app
factory_function函數
exp(list)code
from collections import defaultdict # list 第一次返回空列表,能夠實現數據合併 s = [('red', 1), ('blue', 2), ('yellow', 3), ('blue', 4), ('red', 1)] d = defaultdict(list) for k, v in s: d[k].append(v) print(d) # defaultdict(<class 'list'>, {'red': [1, 1], 'blue': [2, 4], 'yellow': [3]})
exp(int)字符串
from collections import defaultdict # int 初始化返回0,實現計數 str = "aswewesdcawreqmo" d = defaultdict(int) for s in str: d[s]+=1 print(d) # defaultdict(<class 'int'>, {'a': 2, 's': 2, 'w': 3, 'e': 3, 'd': 1, 'c': 1, 'r': 1, 'q': 1, 'm': 1, 'o': 1})