假设我有一个 dict of dicts:
foo = {
'category': {
'key1': 'bar',
'key2': 'bar',
'key3': 'bar',
},
'category2': {
'key4': 'bar',
'key5': 'bar',
},
}
要获取成员字典中所有键的单个列表,我有一个函数如下:
def _make_list():
baz = list()
for key,val in foo.items():
baz += list(val.keys())
return baz
生成的列表如下所示:['key1', 'key2', 'key3', 'key4', 'key5', ]
。
这很简单,而且有效,但我想知道:有没有一种方法可以通过单行列表理解来实现这一点?成员字典的键将始终是唯一的。
最佳答案
这是一种方法:
>>> [k for d in foo.values() for k in d]
['key1', 'key2', 'key3', 'key4', 'key5']
关于python - 是否可以使用列表理解从一个字典的字典创建所有成员字典键的列表?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41251391/