Python 字典列表中某个键的值列表?
假设我有一个字典列表 我非常确定Python有一种很好的方法(不需要为循环编写2)来检索与键关联的值。(每本字典都有一把钥匙) 我该怎么做 编辑:有一个输入的示例(JSON表示)Python 字典列表中某个键的值列表?,python,list,dictionary,Python,List,Dictionary,假设我有一个字典列表 我非常确定Python有一种很好的方法(不需要为循环编写2)来检索与键关联的值。(每本字典都有一把钥匙) 我该怎么做 编辑:有一个输入的示例(JSON表示) [ [ { "lat": 45.1845931, "lgt": 5.7316984, "name": "Chavant", "sens": "", "line" : [
[
[
{
"lat": 45.1845931,
"lgt": 5.7316984,
"name": "Chavant",
"sens": "",
"line" : [],
"stationID" : ""
},
{
"lat": 45.1845898,
"lgt": 5.731746,
"name": "Chavant",
"sens": "",
"line" : [],
"stationID" : ""
}
],
[
{
"lat": 45.1868233,
"lgt": 5.7565727,
"name": "Neyrpic - Belledonne",
"sens": "",
"line" : [],
"stationID" : ""
},
{
"lat": 45.1867322,
"lgt": 5.7568569,
"name": "Neyrpic - Belledonne",
"sens": "",
"line" : [],
"stationID" : ""
}
]
]
作为输出,我想要一个名字列表
备注:ODBL下的数据。如果您需要平面列表中的所有名称:
response = # your big list
[d.get('name') for lst in response for d in lst]
如果要使用内部列表获取结果:
[[d.get('name') for d in lst] for lst in response]
调用字典列表
L
。然后,通过遍历每个子列表和每个字典,您可以使用列表理解检索所有名称
演示
>>> vals = [ d['name'] for sublist in L for d in sublist ]
>>> vals
[u'Chavant', u'Chavant', u'Neyrpic - Belledonne', u'Neyrpic - Belledonne']
请注意,这将返回所有名称的展开列表(而且,
'Chavant'
会出现两次,因为它在您的输入中出现两次)。请提供一个输入和输出示例。这也将展开嵌套列表。从这个问题上不确定这是否是有意的。我也有兴趣这样做。所以是的。