from collections import defaultdict # 当你新建一个普通字典,对字典中不存在的key进行调用时会报错 a = {} try: print(a["key"]) pass except: print("err") # 如果使用defaultdict进行字典初始化建立,就不存在这个问题; # 当出现不存在的key的时候,会根据默认设置进行默认值创建 b = defaultdict(list) print(b["key"]) # 但是这样就有一个问题,这个key就会一直在这里等待调用,如果没有用到就是垃圾 print(b) # 这个方法可以用于记录的添加;比如一个方法如下: pairs = [{"a":10},{"b":10},{"b":10}] d = {} for key, value in pairs: if key not in d: d[key] = [] d[key].append(value) # 很明显这样就显得很蠢,我还要判断一下键在不在里面 # 使用defaultdict就没有这个困扰,直接省略一键添加 d = defaultdict(list) for key, value in pairs: d["key"].append(value) # 当然为了避免生成空键,使用这东西的时候切记在里面翻东西的时候别直接用dict[key]输入; # 先用keys函数拿到所有键再动手