【发布时间】:2019-02-11 18:27:43
【问题描述】:
假设有一本字典,root,它由键:值对组成,其中一些值本身就是字典。
是否可以(如果可以,如何)通过字典理解来解压这些子字典?
例如
{k: v if type(v) is not dict else **v for k, v in root.items()}
示例:
root = {'a': 1, 'b': {'c': 2, 'd': 3}}
result = {'a': 1, 'c': 2, 'd': 3}
【问题讨论】:
-
导致了什么?你的预期输出是什么?
-
@DeepSpace 已更新以更清晰
-
{_k: _v for k,v in root.items() for _k, _v in (v if isinstance(v, dict) else {k: v}).items()}
标签: python python-3.x dictionary dictionary-comprehension iterable-unpacking