首页 > 解决方案 > python在json中查找与值相关的值

问题描述

嗨,我有一个 python 脚本,它打开一个 json 文件,搜索一个值并返回与之相关的其他参数。目前我无法搜索其中的值。

在我的 json 结构下面:

{
    "MALE": [{
        "name": "John",
        "age": "70",
        "country": "Germany"
    },
    {
        "name": "Luke",
        "age": "35",
        "country": "France"
    }],
    "FEMALE": [{
        "name": "Sarah",
        "age": "29",
        "country": "Spain"
    }]
}

我在 python 方面拥有的是:

import json

with open('/path/to/json/file') as f_json:
     data = json.load(f_json)

我想做的是:获取解析“约翰”名称的“年龄”和“国家”值

我该怎么做?

谢谢

标签: pythonjsonkey

解决方案


您可以尝试以下代码,可能需要一些迭代以适合您的确切用例

import json

with open('/path/to/json/file') as f_json:
    data = json.load(f_json)
    male, female = data.get("MALE"), data.get("FEMALE")
    for person in male:
        if person.get("name") == "John":
            print(person.get("age"), person.get("country")

推荐阅读