1
从字典对象列表开始,如何基于密钥获取仅包含一些字典值的新列表?从字典列表中获取新列表
例如:
my_list = [ {'foo':1},{'bar':2},{'foo':3} ]
new_list = grab_values(my_list, 'foo')
我们所希望的:
new_list = [1, 3]
从字典对象列表开始,如何基于密钥获取仅包含一些字典值的新列表?从字典列表中获取新列表
例如:
my_list = [ {'foo':1},{'bar':2},{'foo':3} ]
new_list = grab_values(my_list, 'foo')
我们所希望的:
new_list = [1, 3]
首先想到的是:
In [2]: [x['foo'] for x in my_list if 'foo' in x]
Out[2]: [1, 3]
作为一个功能:
In [3]: def grab_values(l, key):
...: return [x[key] for x in l if key in x]
...:
In [4]: grab_values(my_list, 'foo')
Out[4]: [1, 3]
是的,我只是用它作为例子,从来没有在我的真实代码中使用它。编辑OP。 – 2013-04-29 21:01:19
@ user11177好:)删除了通知。您可以删除评论。 – 2013-04-29 21:05:09
似乎我不被允许..也许没有足够的代表。 – 2013-04-29 21:23:29