以下代码使用 {} 运算符组合两个 defaultdict。
from collections import defaultdict
aa=defaultdict(str)
bb=defaultdict(str)
aa['foo']+= '1'
bb['bar']+= '2'
cc = {**aa,**bb}
type(cc)
但是,正如我们看到的,如果我们运行它,
{}
运算符返回 dict
输入不是 defaultdict
类型。有没有办法转换
dict
回到defaultdict?
最佳答案
您可以在调用 defaultdict
时直接使用拆包功能。 . defaultdict
是 dict
的子类,并将这些参数传递给其父级以创建字典,就像它们已传递给 dict
一样.
cc = defaultdict(str, **aa, **bb)
# defaultdict(<class 'str'>, {'bar': '2', 'foo': '1'})
关于python - 将 dict 转换为 defaultdict,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51769187/