Python:如何过滤字典列表以获取一个键的所有值

时间:2017-02-08 17:11:21

标签: python list filter

我在python中有一个字典列表:

thedata = [{'date': '2002-02', 'data': 2.0}, 
           {'date': '2002-03', 'data': 2.0017}...]

如何列出数据'值:

[2.0, 2.0017...]

我试过了:

justFigures = list(filter(lambda x: x["data"], thedata))

3 个答案:

答案 0 :(得分:7)

你可以尝试这样:

thedata = [{'date': '2002-02', 'data': 2.0}, 
           {'date': '2002-03', 'data': 2.0017}]

print([a['data'] for a in thedata])

输出:

[2.0, 2.0017]

答案 1 :(得分:5)

我会使用list comprehension

In [1]: thedata = [{'date': '2002-02', 'data': 2.0},
                   {'date': '2002-03', 'data': 2.0017}]

In [2]: just_figures = [ d['data'] for d in thedata ]

In [3]: just_figures
Out[3]: [2.0, 2.0017]

答案 2 :(得分:0)

thedata = [{'date': '2002-02', 'data': 2.0}, 
           {'date': '2002-03', 'data': 2.0017}]

# back to your own way, lambda
# py 2
print map(lambda a : a["data"], thedata)

# py 3
print (list(map(lambda a : a["data"], thedata)))

>>> [2.0, 2.0017]