2014-01-30 80 views
0

我的字典列表理解字典的字典清单?

的词典列表下面是一个示例(JSON格式):

[ 
    { 
     "lineID": 26, 
     "name": "A", 
     "stations": [ 
      { 
       "name": "La Poya", 
       "sens1": 1617, 
       "sens2": 1624 
      }, 
      { 
       "name": "Charles Michels", 
       "sens1": 1598, 
       "sens2": 1597 
      }, 
      { 
       "name": "Fontaine - Hôtel de Ville - La Source", 
       "sens1": 1596, 
       "sens2": 1595 
      } 
     ] 
    }, 
    { 
     "lineID": 27, 
     "name": "B", 
     "stations": [ 
      { 
       "name": "Cité Internationale", 
       "sens1": 2148, 
       "sens2": 2147 
      }, 
      { 
       "name": "Palais de Justice", 
       "sens1": 2139, 
       "sens2": 2138 
      } 
     ] 
    } 
] 

我会检索所有二级字典值,其中的关键是name的列表。我已经尝试了similar question I already asked。但它不起作用。

任何想法如何做到这一点,而不写多个for循环。

+0

'[b ['name'] for a ['stations'] for a in jsonobj]'? – markcial

+0

第一个想法是有有效的JSON,只是说'... –

+0

是啊,对不起,我更新了它。 –

回答

0

对我来说,下面的代码工作:

[d['name'] for lst in myJson for d in lst['stations']] 

myJson是我的字典的字典的列表。