我有一本看起来像这样的字典:
foo = {'a': [{'11': 'coucou'}, {'22': 'test'}], 'b': [{'33': 'plop'}, {'44': 'last'}]}
我想删除第一级来获得这个:
[{'11': 'coucou'}, {'22': 'test'}, {'33': 'plop'}, {'44': 'last'}]
我尝试了这个但没有成功:
bar = {k
for d in foo.values()
for k in d}
错误:TypeError: unhashable type: 'dict'
我知道我的第二次迭代失败了,但是我现在不知道为什么以及如何解决它。
答案 0 :(得分:2)
请注意,示例输出是一个列表,而理解力是一个集合。试试
bar = [k
for d in foo.values()
for k in d]
以获取列表。你也可以做
from itertools import chain
bar = list(chain.from_iterable(foo.values()))