use*_*999 3 python dictionary list-comprehension list
我需要创建一个列表解析,从列表中的列表中的字典中提取值,到目前为止我的尝试都让我失望.该对象如下所示:
MyList=[[{'animal':'A','color':'blue'},{'animal':'B','color':'red'}],[{'animal':'C','color':'blue'},{'animal':'D','color':'Y'}]]
Run Code Online (Sandbox Code Playgroud)
我想提取dict/list/list中每个元素的值,以便获得两个新列表:
Animals=[[A,B],[C,D]]
Colors=[[blue,red],[blue,Y]]
Run Code Online (Sandbox Code Playgroud)
有什么建议?不一定需要使用列表理解; 到目前为止,这只是我的起点.谢谢!
Animals = [[d['animal'] for d in sub] for sub in MyList]
Colors = [[d['color'] for d in sub] for sub in MyList]
Run Code Online (Sandbox Code Playgroud)
给出了期望的结果:
[['A', 'B'], ['C', 'D']]
[['blue', 'red'], ['blue', 'Y']] # No second 'red'.
Run Code Online (Sandbox Code Playgroud)
我在这里做的是获取每个子列表,然后是每个字典,然后访问正确的密钥.