所以我想知道是否有人可以帮助我解决我遇到的这个问题。
假设我有一本字典:
d = {1: {2: 3}, 4: 5}
我想创建一个包含所有字典的字典:
wanted_result = {2: 3}
我正在尝试的是:
e = {inner_key: d[key][inner_key] for key in d.keys() for inner_key in d[key].keys() if isinstance(d[key], dict)}
然而,这导致我收到一个错误,指出 int 没有键,我知道这一点,但我认为我的条件会将 say 4 从我的示例中排除在理解之外。
最佳答案
d = {1: {2: 3}, 4: 5, 6: {7: 8}}
s = {k: v for elem in d.values() if type(elem) is dict for k, v in elem.items()}
>> {2: 3, 7: 8}
关于python - 有条件的字典理解,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10558567/