你可以简单地调用dict:
>>> a
defaultdict(, {'1': ['b', 'a'], '3': ['b'], '2': ['a']})
>>> dict(a)
{'1': ['b', 'a'], '3': ['b'], '2': ['a']}
但记住一个defaultdict是一个dict:
>>> isinstance(a, dict)
True
只是稍有不同的行为,当你尝试访问一个缺少的键 – 这通常会引发一个KeyError – 而不是调用default_factory:
>>> a.default_factory
这是你在字典的数据面出现之前打印时看到的。
所以另一个骗子来获得更多的独立行为,而不实际创建一个新对象是复位default_factory:
>>> a.default_factory = None
>>> a[4].append(10)
Traceback (most recent call last):
File "", line 1, in
a[4].append(10)
KeyError: 4
但大多数时候这是不值得的麻烦。