2017-02-08 32 views
3

我有字典的Python中的列表中的所有一個值:的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)) 

回答

6

您可以嘗試像這樣:

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

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

輸出:

[2.0, 2.0017] 
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] 
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]