使用python从列表中提取Json数据
我在一个列表中有这个示例json数据:使用python从列表中提取Json数据,python,json,Python,Json,我在一个列表中有这个示例json数据: data = [ { "Name": "John_Doe", "Age" : 25 } { "Name": "Jane_Roe", "Age" : 26 } ] 我需要一种基于“Name”键从列表中的元素中提取所有键值对的方法。如果我的变量为'John_Doe',则脚本应仅返回与John_Doe相关的值,即仅返回以下值: { "Name": "John_Doe", "Age" : 25 } 只需提取与键“Name”关联的值为“John_Do
data = [
{ "Name": "John_Doe", "Age" : 25 }
{ "Name": "Jane_Roe", "Age" : 26 }
]
我需要一种基于“Name”键从列表中的元素中提取所有键值对的方法。如果我的变量为'John_Doe',则脚本应仅返回与John_Doe相关的值,即仅返回以下值:
{ "Name": "John_Doe", "Age" : 25 }
只需提取与键
“Name”
关联的值为“John_Doe”
的所有字典:
或与:
如果您所需要的只是带有
名称元素匹配John_Doe
的dict,那么:
matches = [m for m in data if "Name" in m and m["Name"] == "John_Doe"]
您可以展开此列表以查看其功能:
matches = []
for m in data:
if "Name" in m and m["Name"] == "John_Doe":
matches.append[m]
输出:
{'Age': 25, 'Name': 'John_Doe'}
[x表示数据中的x,如果x[“Name”]=“John_Doe”]
?
matches = []
for m in data:
if "Name" in m and m["Name"] == "John_Doe":
matches.append[m]
def get_details(data, name):
for i in data:
if i['Name'] == name:
return i
return {}
data = [{"Name": "John_Doe", "Age" : 25 },{"Name": "Jane_Roe", "Age" : 26 }]
name = "John_Doe"
get_details(data, name)
{'Age': 25, 'Name': 'John_Doe'}