繁体   English   中英

使用python中的列表理解从字典列表中创建单个值列表

[英]Create a single list of values from from a list of dictionary using list comprehension in python

我有一个字典列表如下:
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']] 

这是你的列表理解。 所以你的列表将等于 i for x in name list for i in x['a']

你可以试试这个。 这是列表理解的一个例子。

[l for i in name_list for j, k in i.items() for l in k if len(k)>0]

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM