问题描述
我的字典清单如下:name_list = [{'a':['alice','bob']},{'a':[]},{'a':['sam','alex']},{'a':[]}]
我想要使用python列表理解功能的最终列表如下:['alice','bob','sam','alex']
我尝试做for name in name_list:
final_list = [value for key,value in name.items() if len(value)>0]
有人可以帮我吗
解决方法
只需执行以下操作:
final_list = [name for name_dict in name_list for name in name_dict["a"]]
,
name_list = [{'a':['alice','bob']},{'a':[]},{'a':['sam','alex']},{'a':[]}]
my_list = [i for x in name_list for i in x['a']]
这是您的列表理解。因此您的列表将等于x ['a']
中i的名称列表中的x ,您可以尝试一下。这是一个列表理解的例子。
[l for i in name_list for j,k in i.items() for l in k if len(k)>0]